Golang网络编程(二):并发Server-Client

一、概述

上一篇实现了一个server和client通信,完成了小写转大写的功能,但是是一个单任务式的响应:客户端发送连接接收响应,程序结束;服务端则接收数据响应数据也结束!就实际需要而言,并没有很大的用处,所以现在我们就给客户端和服务端添加上并发功能。

Golang网络编程(一)

1. 前言

​ 最近工作当中用Python写了非常多的socket代码,用于和底层的设备之间进行交互。然而我的方式比较原始,自己在一个基础的socket上不断地进行扩展。总所周知,Python的网络编程界有一个大名鼎鼎的Twisted框架,Twisted是已经一个维护了十余年的成熟项目,基于事件驱动设计的高性能网络编程框架。奈何这个框架的学习成本比较高,再由于笔者最近在学习Go语言,所以想着不如在Go语言中折腾一下网络编程,以下就是笔者学习阶段的一些总结。

2019年度总结

痛楚难以避免,而磨难可以选择。 ——村上春树《当我跑步时,我谈些什么》

从Twisted到asyncio

Twisted可能是Python中支持的异步编程的最古老的第三方库之一。许多开发者已使用它开发了各种应用程序。它支持许多网络协议,并可用于许多不同类型的网络编程。实际上,asyncio受Twisted的启发很大。几名专业的Twisted开发人员的也参加到了asyncio的构建工作中。不久,将会有一个基于asyncio的Twisted版本。

Docker快速搭建Kafka开发环境

最近由于业务的需求,做了一些常用的消息队列的调研。提到MQ那么大名鼎鼎的kafka自然不能不研究一下。

作为一个新手玩家,快速搭建起一套可以运行的环境十分重要,根据文档的介绍可以完成在Linux系统下的环境搭建,但是读下来发现步骤还是有点繁多。有没有什么更加快捷的办法搭建一套可以运行的开发环境呢,于是我想到了Docker。2019年了,容器化已经成为了主流,在本地进行开发和测试的时候使用Docker也便于模拟多节点的集群环境。

八月杂记

​ 经历了许多个连续加班的晚上,手头的工作终于告一段落。