收集、管理和分享有用的代码片段,提高开发效率
密钥交换协议实现
func genParams(p big.Int, g big.Int) (*privateKey, *publicKey, error) {
privateKey, err := crypto.RandInt(big.NewInt(2), big.NewInt(p))
if err != nil {
return nil, nil, err
}
publicKey := new(big.Int).Exp(g, privateKey, p)
return privateKey, publicKey, nil
}
func genSharedKey(publicKey, privateKey, p *big.Int) *big.Int {
return new(big.Int).Exp(publicKey, privateKey, p)
}
实时双向通信实现
func handleWebSocket(w http.ResponseWriter, r *http.Request) {
conn, err := upgrade.Upgrade(w, r, nil)
if err != nil {
log.Fatal(err)
}
defer conn.Close()
for {
mt, message, err := conn.ReadMessage()
if err != nil {
break
}
err = conn.WriteMessage(mt, message)
if err != nil {
break
}
}
}
高性能RPC框架实现
�ɽѼ���х��ɽѼ̈�()͕�٥���ɕ�ѕȁ�4(%���M��!������!����I��Օ�Ф�ɕ��ɹ̀�!����I����͔����)�()���ͅ���!����I��Օ�Ё�4 ����ɥ�����������4)�4()���ͅ���!����I����͔��4(�����ɥ������ͅ������)�()�չ����������(%���ѕ�����Ȁ�й1��ѕ���э���������(%�����Ȁ����($%�����х����Ȥ(%�((%̀�����9��M��ٕȠ�(%ɕ���ѕ�ɕ�ѕ�M��ٕȡ̤(%̹M��ٔ����ѕ��)�