自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

程序创坊

与你分享知识和经验

  • 博客(40)
  • 资源 (9)
  • 收藏
  • 关注

原创 SM4 研究与实现

SM4

2022-11-01 19:40:39 1866

原创 SM3 研究与实现

SM3

2022-10-25 10:13:45 917 1

原创 SM2 研究

SM2 椭圆曲线

2022-10-03 23:47:08 571

原创 TLS 协议研究

TLS 协议研究

2022-08-29 00:59:31 966

原创 SMTP 协议研究

SMTP 协议研究

2022-08-22 13:37:55 5143

原创 GoLang Map 实现分析

GoLang Map 实现分析

2022-08-15 18:28:26 407

原创 GoLang dlv调试启动过程

GoLang dlv 调试启动流程

2022-07-16 00:20:14 339

原创 GoLang 栈帧 实现分析

GoLang 栈帧实现分析

2022-07-15 00:56:49 252

原创 GoLang Defer 实现分析

golang defer 实现分析

2022-06-27 22:52:57 109

原创 eBPF/XDP实现Conntrack功能

基于eBPF/XDP 实现contrack功能

2022-06-19 18:31:34 901

原创 GoLang NetPoll 实现分析

Go netpoller 通过在底层对 epoll/kqueue/iocp 的封装,从而实现了使用同步编程模式达到异步执行的效果

2022-05-09 14:16:44 544

原创 P4 环境配置

P4 开发环境

2022-05-02 23:19:39 296

原创 技术负责人的几点经验

技术负责人的几点经验

2022-04-27 23:45:21 416

原创 GoLang sync.Mutex 实现分析

sync.Mutex

2022-04-16 16:01:12 2011

原创 eBPF/XDP加速报文转发

eBPF/XDP加速网络转发

2022-04-04 14:49:15 4507

原创 GoLang sync.RWLock 实现分析

Golang 读写锁sync.RWLock实现分析

2022-03-16 15:50:41 754

原创 GoLang 内存思考

Golang内存分配

2022-02-13 22:00:28 248

原创 eBPF/XDP实现防火墙功能

eBPF/XDP实现防火墙功能

2022-02-13 08:52:29 3079 3

原创 golang 校验函数积累

golang 常用场景校验邮箱校验手机号校验域名校验目录结构---- src |--- util | |--- util.go |--- main | |--- main.gopackage utilimport "regexp"//@brief: 校验邮箱地址是否有效func VerifyEmailFo...

2019-10-08 23:05:13 246

原创 GoLang Template 发送邮件

GoLang SMTP发送邮件

2019-09-30 09:29:47 1345

原创 Golang心跳机制实现示例

前言: 最近在做一款产品,服务端需要监测客户端状态(在线/离线)。服务端报表展示客户端的上下线次数和运行时长等信息。通用的处理方式: 客户端发送心跳请求+重试机制。重试X次失败则定义为离线 服务端响应心跳请求+超时机制。超时X秒未收到心跳请求则定义为下线 //服务端​//全局变量var ids = make(map[string]chan byte)​...

2019-09-11 22:21:36 3552 2

原创 Golang并发控制WaitGroup和Context

sync.WaitGroup (package sync) func (wg *WaitGroup) Add(delta int) func (wg *WaitGroup) Done() func (wg *WaitGroup) Wait() //@brief: golang并发控制//@note: WaitGroup和Context/...

2019-09-08 15:22:51 956

原创 GUI(图形用户接口)的发展的竞争与共存

前言: GUI——图形用户接口,直白描述就是界面。GUI的发展随计算机发展而发展,主要是由IBM, Apple, MS等公司推动与发展。。1960s道格拉斯·恩格尔巴特(Douglas Engelbart)NLS||---- Engelbart的工作直接导致了Xerox PARC的进步|。1970sXerox PARC(施乐帕罗奥...

2019-09-08 10:34:16 367

原创 How to Design Better Restful API?

前言: 如今,API已经成为一个提供服务重要方式或者途径。我一直从事后台服务系统的开发工作,深刻懂得一个结构清晰API的重要性。不成文的规定“对外提供web服务采用Restful风格,服务内部采用RPC”。Google查阅一些文档,总结一下有9步。Check list ☑️使用名词,不要动词。 GETPOST...

2019-09-02 23:38:03 179

原创 定位性能的方法更值得掌握

编码千行,接口百个。 ...

2019-09-02 23:31:44 306

原创 OpenCV历史

通过收集网上资料整理而得,希望通过了解OpenCV历史增添网友学习OpenCV乐趣。小编能力有限,文章若有不对的地方请在下方留言指正。Thank you

2016-07-29 13:18:58 1693

转载 LINUX系统中动态链接库的创建与使用

LINUX系统中动态链接库的创建与使用      大家都知道,在WINDOWS系统中有很多的动态链接库(以.DLL为后缀的文件,DLL即Dynamic Link Library)。这种动态链接库,和静态函数库不同,它里面的函数并不是执行程序本身的一部分,而是根据执行程序需要按需装入,同时其执行代码可在多个执行程序间共享,节省了空间,提高了效率,具备很高的灵活性,得到越来越多

2016-07-13 22:13:12 334

原创 C++函数重载和内置函数

C++函数重载和内置函数

2016-06-22 15:43:31 364

原创 md5(代码片段)

md5(代码片段)

2016-06-21 13:02:48 525

原创 sha1(代码片段)

sha1(代码片段)

2016-06-21 12:36:05 507

原创 C++面向对象基础知识详解三

C++面向对象基础知识详解三

2016-06-18 10:36:34 495

原创 C++面向对象基础知识详解二

C++面向对象基础知识详解二

2016-06-15 12:38:40 653

原创 C++面向对象基础知识详解一

C++面向对象基础知识详解

2016-06-14 16:14:59 1029 1

原创 计数排序(代码片段)

计数排序(代码片段)

2016-06-08 12:59:18 250

原创 归并排序(代码片段)

归并排序(代码片段)

2016-06-08 11:27:49 243

原创 堆排序(代码片段)

堆排序(代码片段)

2016-06-08 11:18:38 222

原创 Linux系统Shell编程基础知识储备

Linux Shell 编程基础知识储备

2016-06-04 19:04:03 328

原创 代码片段(快速排序)

代码片段(快速排序)

2016-06-01 14:08:08 278

原创 常见算法情景的时间复杂度分析

内容概述:因为大多数算法基本上是应用循环结构,递归结构, 循环+递归结构;  算法的时间基本上都消耗在这两部分,因此,分析算法的时间复杂度就是对循环结构的分析或者对递归结构的分析或者对循环递归的复合分析。

2016-05-30 09:56:01 356

原创 算法的是时间复杂度分析

原由:最近再温习数据结构,书中直接给出了算法的时间复杂读,但是静下心来想想它是如何得出次结果的呢?自己也不是很清楚,便上网查阅资料和书籍,将自己总结写来与君共勉。

2016-05-19 23:00:35 598

基于eBPF/XDP实现conntrack功能

连接跟踪(conntrack)是网络应用非常非常的基础,比如有状态防火墙 (firewall),网络地址转换(nat),负载均衡(lb)。Linux conntrack 是 基于 netfilter 实现的,如图所示,分别在 PREROUTING, POSTROUTING 位置前 和后对网络报文进行跟踪;但是 XDP 位置在进入网络栈之前,无法利用到内核栈的 conntrack 能力, Cilium 应该遇到同样的问题, 所以 Cilium 基于 eBPF 实现了 conntrack;换句话说,只要具备 Hook 能力,能拦截进出主机的每个报文,完全可以实 现一套连接跟踪功能, 这个该项目的核心思路。 购买文档,免费给源代码!! 购买文档,免费给源代码!! 购买文档,免费给源代码!!

2022-06-19

基于eBPF/XDP快速转发

传统网络转发路径是从L2L3,查询路由表然后转发,中间解析报文且分配SKB。 XDP转发路径可以下沉L2, 解析报文再封装,无SKB分配,高效且快速。 购买设计文档免费送源码, 免费咨询

2022-04-02

基于eBPF/XDP实现L4防火墙

互联网服务常常需要预防DDoS攻击,希望尽早丢弃攻击流量减少服务器资源的浪费。从概念上分析,防火墙是抵御DDoS的有效手段,但是实际基于NetFilter的IpTables并不能解决该问题,因为其处理报文的位置已分配SKB,大量无效SKB会耗尽内存资源,拖垮服务器。但基于eBPF/XDP实现的防火墙能够更早处理攻击流量而不消耗CPU和内存资源,更高效,更安全。

2022-02-27

md5(C++实现)

md5, 预留函数接口,可以改进

2016-06-21

sha1(C++实现)

sha1算法实现,接口预先定义好,你可以参考资料进行扩展改进。

2016-06-21

计数排序(代码片段)

计数排序(代码片段)

2016-06-08

归并排序(代码片段)

归并排序(代码片段)

2016-06-08

堆排序(代码片段utf-8编码)

堆排序(代码片段utf-8编码)

2016-06-08

代码片段(快速排序)

代码片段(快速排序)

2016-06-01

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除