<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[jxluoix的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/jxluoix</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; jxluoix]]></copyright><item><title><![CDATA[Last Agent Optimization]]></title><link>https://blog.youkuaiyun.com/jxluoix/article/details/84926600</link><guid>https://blog.youkuaiyun.com/jxluoix/article/details/84926600</guid><author>jxluoix</author><pubDate>Sun, 30 Sep 2018 19:42:17 +0800</pubDate><description><![CDATA[Last Agent Optimization

1. Non XA
2. XA
3. LAO]]></description><category></category></item><item><title><![CDATA[java di/ioc]]></title><link>https://blog.youkuaiyun.com/jxluoix/article/details/84926596</link><guid>https://blog.youkuaiyun.com/jxluoix/article/details/84926596</guid><author>jxluoix</author><pubDate>Sun, 30 Sep 2018 17:35:53 +0800</pubDate><description><![CDATA[public class Test {

    @org.junit.Test
    public void test1() {
        HK2 hk2 = HK2.get();
        Services services = hk2.create(null, new Module[0]);
        DynamicBinderFactory dynamicB...]]></description><category></category></item><item><title><![CDATA[scala break]]></title><link>https://blog.youkuaiyun.com/jxluoix/article/details/84926455</link><guid>https://blog.youkuaiyun.com/jxluoix/article/details/84926455</guid><author>jxluoix</author><pubDate>Thu, 27 Sep 2018 13:37:55 +0800</pubDate><description><![CDATA[
import org.junit.{Before, BeforeClass, Test}
import org.scalatest.junit.JUnitSuite

import scala.util.control.{Breaks, ControlThrowable}

private class BreakControl extends ControlThrowable

...]]></description><category></category></item><item><title><![CDATA[py ]]></title><link>https://blog.youkuaiyun.com/jxluoix/article/details/84926454</link><guid>https://blog.youkuaiyun.com/jxluoix/article/details/84926454</guid><author>jxluoix</author><pubDate>Thu, 27 Sep 2018 12:29:23 +0800</pubDate><description><![CDATA[# &gt;python Sample1.py
# hello, world

class Feature: 
	'feature'
	def __init__(self, att, value): 
		self._att = att
		self._value = value
		
	def att(self):
		&quot;att&quot;
		return self._att
		
...]]></description><category></category></item><item><title><![CDATA[scala JUnitSuite for unit test]]></title><link>https://blog.youkuaiyun.com/jxluoix/article/details/84926453</link><guid>https://blog.youkuaiyun.com/jxluoix/article/details/84926453</guid><author>jxluoix</author><pubDate>Thu, 27 Sep 2018 12:26:45 +0800</pubDate><description><![CDATA[import org.junit.{Before, BeforeClass, Test}
import org.scalatest.junit.JUnitSuite

import scala.util.control.{Breaks, ControlThrowable}
import scala.util.control.Breaks._

private class BreakCo...]]></description><category></category></item><item><title><![CDATA[tomcat jmx]]></title><link>https://blog.youkuaiyun.com/jxluoix/article/details/84922510</link><guid>https://blog.youkuaiyun.com/jxluoix/article/details/84922510</guid><author>jxluoix</author><pubDate>Fri, 22 Jun 2018 13:50:08 +0800</pubDate><description><![CDATA[{
  sun.management.RuntimeImpl[java.lang:type=Runtime],
  sun.management.GarbageCollectorImpl[java.lang:type=GarbageCollector,name=PS Scavenge],
  org.apache.tomcat.util.modeler.BaseModelMBean[Tomc...]]></description><category></category></item><item><title><![CDATA[ftp://ftp.ics.uci.edu/pub/machine-learning-databases]]></title><link>https://blog.youkuaiyun.com/jxluoix/article/details/84921739</link><guid>https://blog.youkuaiyun.com/jxluoix/article/details/84921739</guid><author>jxluoix</author><pubDate>Wed, 06 Jun 2018 14:29:37 +0800</pubDate><description><![CDATA[ftp://ftp.ics.uci.edu/pub/machine-learning-databases


https://www.ece.rice.edu/~wakin/images/

https://blog.youkuaiyun.com/duan19920101/article/details/50679061]]></description><category></category></item><item><title><![CDATA[scala (λx.M)]]></title><link>https://blog.youkuaiyun.com/jxluoix/article/details/84921738</link><guid>https://blog.youkuaiyun.com/jxluoix/article/details/84921738</guid><author>jxluoix</author><pubDate>Wed, 06 Jun 2018 14:27:42 +0800</pubDate><description><![CDATA[&gt; val fx1 = (x: Int) =&gt; x + 1
fx1: Int =&gt; Int = $$Lambda$1059/1521946103@6764201e
&gt; fx1(1)
res7: Int = 2

&gt; def fx2 = (x: Int) =&gt; x + 1
fx2: Int =&gt; Int
&gt; fx2(2)
res8: Int = 3

&gt; def fx3(x: I...]]></description><category></category></item><item><title><![CDATA[UUID]]></title><link>https://blog.youkuaiyun.com/jxluoix/article/details/84921309</link><guid>https://blog.youkuaiyun.com/jxluoix/article/details/84921309</guid><author>jxluoix</author><pubDate>Tue, 29 May 2018 16:12:37 +0800</pubDate><description><![CDATA[
UUID-&gt;
          -&gt;










most significant long-&gt;
                                     -&gt;
time_low-&gt;
time_mid-&gt;
version-&gt;|||


time_hi-&gt;

UUID中的时间戳表示1582年10月15号午夜即晚上12点(UTC时...]]></description><category></category></item><item><title><![CDATA[RLP]]></title><link>https://blog.youkuaiyun.com/jxluoix/article/details/84918492</link><guid>https://blog.youkuaiyun.com/jxluoix/article/details/84918492</guid><author>jxluoix</author><pubDate>Thu, 05 Apr 2018 14:14:46 +0800</pubDate><description><![CDATA[RLP
Recursive Length Prefix

RLP元素：
item，list

长度编码
数据编码
数据编码和长度编码采用的是相同的编码规则。

编码规则：
                              -&gt;  |  |  | ()+
                              -&gt; -128, 1-127
          ...]]></description><category></category></item><item><title><![CDATA[随便记录点东西]]></title><link>https://blog.youkuaiyun.com/jxluoix/article/details/84914240</link><guid>https://blog.youkuaiyun.com/jxluoix/article/details/84914240</guid><author>jxluoix</author><pubDate>Thu, 28 Dec 2017 20:30:45 +0800</pubDate><description><![CDATA[头部

body
压缩

不压缩
BytesTransportRequest请求

非BytesTransportRequest请求

压缩算法

action
如：indices:data/read/search
请求头


请求内容

如：org.elasticsearch.action.search.SearchRequest



...]]></description><category></category></item><item><title><![CDATA[dubbo 协议]]></title><link>https://blog.youkuaiyun.com/jxluoix/article/details/84913128</link><guid>https://blog.youkuaiyun.com/jxluoix/article/details/84913128</guid><author>jxluoix</author><pubDate>Wed, 06 Dec 2017 16:32:01 +0800</pubDate><description><![CDATA[encode
one to one
org.jboss.netty.handler.codec.oneone.OneToOneEncoder

com.alibaba.dubbo.remoting.transport.netty.NettyCodecAdapter.InternalEncoder

org.jboss.netty.handler.codec.base64.Base64E...]]></description><category></category></item><item><title><![CDATA[随便一点代码]]></title><link>https://blog.youkuaiyun.com/jxluoix/article/details/84911912</link><guid>https://blog.youkuaiyun.com/jxluoix/article/details/84911912</guid><author>jxluoix</author><pubDate>Sat, 11 Nov 2017 22:56:18 +0800</pubDate><description><![CDATA[
 
/*
 * $ gcc -c selecttest.c -o selecttest.o
 * $ gcc selecttest.o -o selecttest
 */
#include &amp;lt;stdio.h&amp;gt;
#include &amp;lt;stdlib.h&amp;gt;
#include &amp;lt;string.h&amp;gt;
#include &amp;lt;errno.h&amp;gt;

...]]></description><category></category></item><item><title><![CDATA[随便一点代码]]></title><link>https://blog.youkuaiyun.com/jxluoix/article/details/84911579</link><guid>https://blog.youkuaiyun.com/jxluoix/article/details/84911579</guid><author>jxluoix</author><pubDate>Sat, 04 Nov 2017 04:34:10 +0800</pubDate><description><![CDATA[
 
#include &amp;lt;stdio.h&amp;gt;
#include &amp;lt;stdlib.h&amp;gt;
#include &amp;lt;string.h&amp;gt;
#include &amp;lt;errno.h&amp;gt;
#include &amp;lt;assert.h&amp;gt;

#include &amp;lt;sys/types.h&amp;gt;
#include &amp;lt;sys/socket.h&amp;gt;
]]></description><category></category></item><item><title><![CDATA[随便一点代码]]></title><link>https://blog.youkuaiyun.com/jxluoix/article/details/84911288</link><guid>https://blog.youkuaiyun.com/jxluoix/article/details/84911288</guid><author>jxluoix</author><pubDate>Sun, 29 Oct 2017 23:56:29 +0800</pubDate><description><![CDATA[
 
#include &amp;lt;stdio.h&amp;gt;
#include &amp;lt;string.h&amp;gt;
#include &amp;lt;errno.h&amp;gt;
#include &amp;lt;assert.h&amp;gt;

#include &amp;lt;netdb.h&amp;gt;

#define __DEBUG__ 

void printf_protoent(struct protoent* ...]]></description><category></category></item><item><title><![CDATA[随便一点代码]]></title><link>https://blog.youkuaiyun.com/jxluoix/article/details/84911265</link><guid>https://blog.youkuaiyun.com/jxluoix/article/details/84911265</guid><author>jxluoix</author><pubDate>Sun, 29 Oct 2017 04:01:48 +0800</pubDate><description><![CDATA[
 
public class NioEventLoop_ServerTest {

	private Selector selector(NioEventLoop eventLoop) throws NoSuchFieldException {
		Class&amp;lt;?&amp;gt; clazz = eventLoop.getClass();
		Field field = null;
	...]]></description><category></category></item><item><title><![CDATA[以前整理的一点Thrift的资料]]></title><link>https://blog.youkuaiyun.com/jxluoix/article/details/84911252</link><guid>https://blog.youkuaiyun.com/jxluoix/article/details/84911252</guid><author>jxluoix</author><pubDate>Sat, 28 Oct 2017 05:42:39 +0800</pubDate><description><![CDATA[以前整理的一点Thrift的资料]]></description><category></category></item><item><title><![CDATA[Thrift序列化]]></title><link>https://blog.youkuaiyun.com/jxluoix/article/details/84911250</link><guid>https://blog.youkuaiyun.com/jxluoix/article/details/84911250</guid><author>jxluoix</author><pubDate>Sat, 28 Oct 2017 03:50:32 +0800</pubDate><description><![CDATA[

参考struct

Field






上面的Field Id对应下面例子中”:”前面的数字：

struct Order {
    1: required i64 orderId;
    2: required i64 userId;
    3: required string status;
}




Field
stop
 -&gt;...]]></description><category></category></item><item><title><![CDATA[Hessian远程调用（基于Netty）]]></title><link>https://blog.youkuaiyun.com/jxluoix/article/details/84910449</link><guid>https://blog.youkuaiyun.com/jxluoix/article/details/84910449</guid><author>jxluoix</author><pubDate>Sun, 15 Oct 2017 15:17:20 +0800</pubDate><description><![CDATA[
 
public class HessianMethodInvocation implements InvocationHandler, Serializable {

	private static final long serialVersionUID = 7304512179586775133L;
	
	private TestServiceImpl testService;
...]]></description><category></category></item><item><title><![CDATA[RoundRobin]]></title><link>https://blog.youkuaiyun.com/jxluoix/article/details/84910438</link><guid>https://blog.youkuaiyun.com/jxluoix/article/details/84910438</guid><author>jxluoix</author><pubDate>Sun, 15 Oct 2017 03:58:47 +0800</pubDate><description><![CDATA[
 
public int index() {
	return Math.abs(idx.getAndIncrement() % executors.length);
}
 
public int index1() {
	return idx1.getAndIncrement() &amp;amp; executors1.length - 1;
}
 
public int index...]]></description><category></category></item></channel></rss>