`
文章列表
https://www.cnblogs.com/chenguangliang/p/5856701.html   先回答我:为什么模块很重要?   答:因为有了模块,我们就可以更方便地使用别人的代码,想要什么功能,就加载什么模块。但是,这样做有一个前提,那就是大家必须以同样的 ...

netty的zero copy

https://segmentfault.com/a/1190000007560884

最干的RxJava介绍

copy from https://www.jianshu.com/p/64aa976a46be   一、Obervable的创建 1.create //通过create创建observable对象,在call中调用subscriber的onnext方法 Observable<String> observable = Observable.create(new Observable.OnSubscribe<String>() { @Override public void call(Subscriber<? ...

Retrofit 使用

copy from  https://www.daidingkang.cc/2016/06/17/Retrofit2-network-framework-parsing/    纪念这个明天比昨天更好的时代,纪念这个二胎开放的时代,对于技术日新月累的今天,各种新的网络技术也层数不穷,从老牌的HttpClient,那时还不能称之为框架;到android-async-http,再到如今的老将Volley;曾几何时,正是Xutils,Afindl等大而全的框架盛行其道的时候,如今也已经褪去了往日的辉煌,留下了无尽的悔恨暗暗孤独终老;如今新的网络框架诸如Okhttp,Retrofit等异军突起,新 ...
前言 分布式系统中经常会出现某个基础服务不可用造成整个系统不可用的情况, 这种现象被称为服务雪崩效应. 为了应对服务雪崩, 一种常见的做法是手动服务降级. 而Hystrix的出现,给我们提供了另一种选择. 服务雪崩效应的定义 服务雪崩效应是一种因 服务提供者 的不可用导致 服务调用者 的不可用,并将不可用 逐渐放大 的过程.如果所示: 上图中, A为服务提供者, B为A的服务调用者, C和D是B的服务调用者. 当A的不可用,引起B的不可用,并将不可用逐渐放大C和D时, 服务雪崩就形成了. 服务雪崩效应形成的原因 我把服务雪崩的参与者简化为 服务提供者 和 服务调用者, 并将服务 ...
在protobuf序列化的前面,加上一个自定义的头,这个头包含序列化的长度和它的类型。在解压的时候根据包头来反序列化。   假设socket上要传输2个类型的数据,股票行情信息和期权行情信息: 股票的.proto定义: syntax = "proto3"; package test.model.protobuf; option java_package = "test.model.protobuf"; message StockTick { string stockId = 1
netty 默认支持protobuf 的封装与解码,如果通信双方都使用netty则没有什么障碍,但如果客户端是其它语言(C#)则需要自己仿写与netty一致的方式(解码+封装),提前是必须很了解netty是如何进行封装与解码的。这里主要通过读源码主要类ProtobufVarint32FrameDecoder(解码)+ProtobufVarint32LengthFieldPrepender(封装) 来解析其原理与实现。 文章来源http://www.cnblogs.com/tankaixiong 一,支持protobuf 协议的默认实现 //配置服务端NIO线程组 ...
1、HTTP Keep-Alive在http早期,每个http请求都要求打开一个tpc socket连接,并且使用一次之后就断开这个tcp连接。使用keep-alive可以改善这种状态,即在一次TCP连接中可以持续发送多份数据而不会断开连接。通过使用keep-alive机制,可以减少tcp连接建立次数,也意味着可以减少TIME_WAIT状态连接,以此提高性能和提高httpd服务器的吞吐率(更少的tcp连接意味着更少的系统内核调用,socket的accept()和close()调用)。但是,keep-alive并不是免费的午餐,长时间的tcp连接容易导致系统资源无效占用。配置不当的keep-al ...
想针对已有web ui 做个java 客户端,复用web ui 样式。 因此决定用 javafx + webview 的方式。但是发现 有些功能webview支持的不是很好,比如不能控制电脑摄像头拍照。于是想,能否用java打开默认浏览器,用浏览器打开html,同时java client 还能与之交互。搜了下还真有   You will be unable to get your JavaFX application to use a webcam from within a WebView until both the underlying JavaFX platform and We ...
场景 有一个项目需要加载一个自定义的xml文件。正常情况下,我们把资源文件放到src/main/resources目录下。这样就有一个问题,这里面的资源文件会被一起打包到jar里面。   如果只是spring本身的文件还好说,因为spring boot会加载jar同级目录以及与jar同级的conf目录下的application*.properties文件。而我们的xml文件,不是spring加载的,是我们自己写的解析。   这样发布后,只能从classpath加载,也就是jar包本身里面。现在要求实现类spring这种方式来加载。 先通过下图看看原来的加载方式,直接中cl ...
http://blog.csdn.net/u011955252/article/details/52912571 4.1.1  概述        在日常程序开发中,处理外部资源是很繁琐的事情,我们可能需要处理URL资源、File资源资源、ClassPath相关资源、服务器相关资源(JBoss AS 5.x上的VFS资源)等等很 ...
在用maven引入kafka客户端时,以如下版本为例,会有两个版本号2.10  , 0.10.1.0 很让人疑惑。 <dependency>     <groupId>org.apache.kafka</groupId>     <artifactId>kafka_2.10</artifactId>     <version>0.10.1.0</version> </dependency> 然后在依赖lib下会产生两个jar 2.*版本的是scala客户端,1.*版本的是java客户 ...
最近要采用xmpp 协议搭建 web 聊天室。初步研究了一下。 xmpp 是一个基于xml的协议,所用的用户验证,通讯,查询等操作传输的都是xml。 ejabberd 是服务端实现 支持集群部署。 客户端实现有很多,基于java的sdk是 smack,基于js的这里采用 candy-chat (http://candy-chat.github.io/candy/) psi 是一个跨平台的 基于xmpp的客户端实现。安装好ejabberd后再安装psi,然后连接ejabberd进行验证。 聊天室匿名登录 要添加配置  {host_config, "10.153.74.19 ...

keytab file in kerberos

How to create a keytab file for a Kerberos user logging into Active Directory.  What's a keytab file?  It's basically a file that contains a table of user accounts, with an encrypted hash of the user's password.  Why have a keytab file?  Well, when you want a server process to automatically logon to ...
jqgrid属性: width :Grid的宽度,如果未设置,则宽度应为所有列宽的之和;如果设置了宽度,则每列的宽度将会根据shrinkToFit选项的设置,进行设置。 shrinkToFit :此选项用于根据width计算每列宽度的算法。默认值为true。如果shrinkToFit为true且设置了width值,则每列宽度会根据width成比例缩放;如果shrinkToFit为false且设置了width值,则每列的宽度不会成比例缩放,而是保持原有设置,而Grid将会有水平滚动条。 autowidth :默认值为false。如果设为true,则Grid的宽度会根据父容器的宽度自动重 ...
Global site tag (gtag.js) - Google Analytics