帕尔默企鹅数据集测试

今天导师在群里分享了一个链接 23 个优秀的机器学习训练公共数据集,看了一下,决定对帕尔默企鹅数据集(Palmer Archipelago (Antarctica) penguin data)做一些分析。 数据集介绍 数据集是在 Kaggle 下载的,包含两个文件: penguins_lter.csv:原始数据文件; penguins_size.csv:特征约简后的数据文件; 本次分析使用的是简化后的数据集 penguins_size.csv。数据集共 344 个样本,特征信息如下表: 特征 数据类型 说明 species 离散值 标签信息,值为 Adelie|Chinstrap|Gentoo 之一 island 离散值 岛屿,...

Go 内置的 RPC 包

在网络或 I/O 连接中,可以使用 net/rpc 包实现对一个对象的导出方法的调用,即远程过程调用(Remote Procedure Call,RPC)。通过向 RPC 服务注册一个对象,使其可被远程调用,进而实现一些复杂的业务逻辑。 项目结构 示例项目的结构如下: client - client.go - json_client.go models - greeting.go server - json_server.go - server.go 注册服务 一个可被远程调用的方法须满足以下条件: 方法所属结构是公开的; 方法是分开的; 方法的参数类型是分开的; 方法带两个参数,第 2 个参数为指针; 方法返回值为 error ...

Protocol Buffer(Protobuf) 是一种高效的数据结构序列化的机制,同时也是一种结构化数据的存储格式。 序列化与反序列化 序列化:将数据结构或对象转换成二进制串的过程; 反序列化:将序列化后的二进制串转换成数据结构或对象的过程; 语法 /* * 语法 */ /* * 指定 Protobuf 解析使用的版本,可以是 proto3 或 proto2 */ syntax = "proto3"; /* * message 定义中的每一个字段都有一个唯一标识,该标识用于在二进制格式中识别字段 * 字段的标识一旦使用就不要进行修改 * 当标识为 1 到 15 时,使用一个字节进行编码,字节信息中包含字段的标识以及类型 * 当标...

Redis 集群是基于“主从复制”特性之上的分布式 Redis 版本,可提供高并发、高性能、高可用的数据库服务。Redis 集群突破了单台服务器的内存局限,集群中的每一个节点都可以存储数据,同时维护着 “key-node” 的映射表。本文记录了 3 主 3 从的 Redis 集群的配置过程,主要内容包括:

  1. Redis 集群的配置过程;
  2. 集群相关命令;
  3. Go 存取集群数据;

每当有快速绘制图表的需求时,第一时间反应到的肯定是 Matplotlib,因为其官方提供了详细的 API 文档及示例。但是每次在编码时,总是时不时地需要查看文档,不利用于可视化快速成型。所以在本文中罗列一些 bar 图的快速实现,方便 Ctrl+C/V。

Revel 是一个以高效率、高性能著称的 Go Web 框架,提供了路由、参数解析和验证、会话机制、模板机制、缓存和任务管理等诸多常用的 Web 开发功能。同时作为一个全栈的 MVC 框架, Revel 通过模块实现了组件的复用,因此可以大大提高开发者的效率。其高性能则是依托 Go 语言的性能,相信这个不必多说。但相较于其它职责相对单一的 Web 框架(如 Gin、go-restful),Revel 只能说是在保证性能的基础上尽可能地对开发者友好。

Redis 主从复制可以实现数据库的读写分离,即主节点负责接收写请求、从节点负责接收读请求,是高性能 Redis 服务的基础。所以配置 Redis 主从复制应当作为开发者的技能之一,后文内容包括:

  1. 单机配置一主二从的主从复制服务
  2. 服务验证;