Java 版 SSMP 协议实现 jssmp

码农软件 · 软件分类 · 协议和规范 · 2019-10-12 20:29:31

软件介绍

jssmp 是 Java 版 SSMP 开源实现。

依赖:

  • JDK 1.8 or higher

  • netty 3.10+

  • slf4j 1.7+

  • guava 17+

客户端

// given: SSLEngine sslEngine;
SSMPClient c = new SSMPClient("localhost", 1234, new HashedWheelTimer(),
        new NioClientSocketChannelFactory(), () -> new SslHandler(sslEngine),
        e -> System.out.println("event: " + e));
c.connect(SSMPIdentifier.fromInternal("foo"),
        SSMPIdentifier.fromInternal("secret"), "NotARealSecret",
        new ConnectionListener() {
            @Override public void connected() { System.out.println("connected"); }
            @Override public void disconnected() { System.out.println("disconnected"); }
        });
SSMPResponse r = c.request(SSMPRequest.ucast(SSMPIdentifier.fromInternal("bar"),
        "Hello World!")).get();
System.out.println("response: " + r);

服务器端

// given: SSLEngine sslEngine;
SSMPServer s = new SSMPServer(new InetSocketAddress("localhost", 1234),
        new HashedWheelTimer(), new NioServerSocketChannelFactory(),
        () -> new SslHandler(sslEngine),
        new Authenticator() {
            @Override public boolean authenticate(SSMPIdentifier id, SSMPIdentifier scheme, String cred) {
                return scheme.toString().equals("secret") && cred.equals("NotARealSecret");
            }
            @Override public ChannelBuffer unauthorized() {
                return ChannelBuffers.wrappedBuffer("401 secret\n".getBytes(StandardCharsets.US_ASCII));
            }
        });
s.start();

本文地址:https://www.codercto.com/soft/d/16622.html

程序员修炼之道

程序员修炼之道

Andrew Hunt、David Thomas / 马维达 / 电子工业出版社 / 2005-1 / 48.00元

《程序员修炼之道》由一系列的独立的部分组成,涵盖的主题从个人责任、职业发展,直到用于使代码保持灵活、并且易于改编和复用的各种架构技术。利用许多富有娱乐性的奇闻轶事、有思想性的例子以及有趣的类比,全面阐释了软件开发的许多不同方面的最佳实践和重大陷阱。无论你是初学者,是有经验的程序员,还是软件项目经理,本书都适合你阅读。一起来看看 《程序员修炼之道》 这本书的介绍吧!

SHA 加密
SHA 加密

SHA 加密工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

html转js在线工具
html转js在线工具

html转js在线工具