<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[王晓斌的专栏]]></title><description><![CDATA[Take honour from me and my life is undone. ]]></description><link>https://blog.youkuaiyun.com/robinjwong</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; robinjwong]]></copyright><item><title><![CDATA[【Java.Apache.Camel】]]></title><link>https://blog.youkuaiyun.com/robinjwong/article/details/50303163</link><guid>https://blog.youkuaiyun.com/robinjwong/article/details/50303163</guid><author>robinjwong</author><pubDate>Tue, 15 Dec 2015 00:34:59 +0800</pubDate><description><![CDATA[Apache Camel —— 一种Enterprise Integration Patterns的实现； 参考《企业集成模式：设计、构建及部署消息传递解决方案》。
提供消息路由route:基本功能是接受消息、处理消息和分派消息。
通过Java领域特定语言DSL（基于Camel 提供的java API, 或者Spring配置文件等）来配置路由和处理规则。其核心的思想是从一个from源头得到数据]]></description><category></category></item><item><title><![CDATA[【并发】伪共享 —— False Sharing]]></title><link>https://blog.youkuaiyun.com/robinjwong/article/details/50285047</link><guid>https://blog.youkuaiyun.com/robinjwong/article/details/50285047</guid><author>robinjwong</author><pubDate>Sun, 13 Dec 2015 18:19:59 +0800</pubDate><description><![CDATA[转自： http://ifeve.com/falsesharing/




作者：Martin Thompson  译者：丁一

缓存系统中是以缓存行（cache line）为单位存储的。缓存行是2的整数幂个连续字节，一般为32-256个字节。最常见的缓存行大小是64个字节。当多线程修改互相独立的变量时，如果这些变量共享同一个缓存行，就会无意中影响彼此的性能，这就是伪共享。缓存行上]]></description><category></category></item><item><title><![CDATA[Socket TCP粘包拆包]]></title><link>https://blog.youkuaiyun.com/robinjwong/article/details/50155115</link><guid>https://blog.youkuaiyun.com/robinjwong/article/details/50155115</guid><author>robinjwong</author><pubDate>Thu, 03 Dec 2015 01:26:12 +0800</pubDate><description><![CDATA[TCP（transport control protocol，传输控制协议）是面向连接的，面向流的，提供高可靠性服务。收发两端（客户端和服务器端）都要有一一成对的socket，因此，发送端为了将多个发往接收端的包，更有效的发到对方，使用了优化方法（Nagle算法），将多次间隔较小且数据量小的数据，合并成一个大的数据块，然后进行封包。这样，接收端，就难于分辨出来了，必须提供科学的拆包机制。即面向流的]]></description><category></category></item><item><title><![CDATA[Reactor VS Proactor 模式]]></title><link>https://blog.youkuaiyun.com/robinjwong/article/details/50117091</link><guid>https://blog.youkuaiyun.com/robinjwong/article/details/50117091</guid><author>robinjwong</author><pubDate>Mon, 30 Nov 2015 19:15:27 +0800</pubDate><description><![CDATA[I/O多路复用模式： Reactor & Proactor


一般地,I/O多路复用机制（I/O multiplexing mechanisms）都依赖于一个事件多路分离器(Event Demultiplexer)。我们常见的事件多路分用器包括：Linux 的 EPOLL 和 Windows 的 IOCP。

分离器对象可将来自事件源的I/O事件分离出来，并分发到对应的read/wri]]></description><category></category></item><item><title><![CDATA[yum安装软件包]]></title><link>https://blog.youkuaiyun.com/robinjwong/article/details/50083535</link><guid>https://blog.youkuaiyun.com/robinjwong/article/details/50083535</guid><author>robinjwong</author><pubDate>Sat, 28 Nov 2015 13:52:25 +0800</pubDate><description><![CDATA[转自： http://blog.youkuaiyun.com/haniyan/article/details/22147437




#yum install subversion
#rpm -qa | grep subversion
subversion-1.6.11-10.el6_5.x86_64

# rpm -ql subversion-1.6.11-10.el6_5.x86_64]]></description><category></category></item><item><title><![CDATA[RHEL7.0 安装Oracle 11gR2报错解决]]></title><link>https://blog.youkuaiyun.com/robinjwong/article/details/50083501</link><guid>https://blog.youkuaiyun.com/robinjwong/article/details/50083501</guid><author>robinjwong</author><pubDate>Sat, 28 Nov 2015 13:50:00 +0800</pubDate><description><![CDATA[转自： http://www.linuxidc.com/Linux/2015-01/112247.htm






1、在安装到68%时提示错误Error in invoking target 'install' of makefile '/u01/app/oracle/product/11.2.0/dbhome_1/ctx/lib/ins_ctx.mk'. See '/u01/a]]></description><category></category></item><item><title><![CDATA[RedHat Server 7 单独安装图形系统 X11]]></title><link>https://blog.youkuaiyun.com/robinjwong/article/details/50073237</link><guid>https://blog.youkuaiyun.com/robinjwong/article/details/50073237</guid><author>robinjwong</author><pubDate>Fri, 27 Nov 2015 17:51:10 +0800</pubDate><description><![CDATA[转自： http://blog.itpub.net/27771627/viewspace-1223155/


RHEL7 默认是最小化安装（Minimal Install），没有图形界面，
我们应该选择Server with GUI。若已错过此步骤，我们采用以下方式补充安装GUI界面。

先配置yum源
可以参考我的这篇文章
http://blog.itpub.net/27771]]></description><category></category></item><item><title><![CDATA[RHEL 7.0 系统安装配置图解教程]]></title><link>https://blog.youkuaiyun.com/robinjwong/article/details/50071945</link><guid>https://blog.youkuaiyun.com/robinjwong/article/details/50071945</guid><author>robinjwong</author><pubDate>Fri, 27 Nov 2015 16:27:46 +0800</pubDate><description><![CDATA[转自： http://os.51cto.com/art/201406/442839.htm







说明：

截止目前RHEL 7.x最新版本为RHEL 7.0，下面介绍RHEL 7.0的具体安装配置过程。

服务器相关设置如下：

操作系统：RHEL 7.0 64位

IP地址：192.168.21.128

网关：192.168.21.2

DNS]]></description><category></category></item><item><title><![CDATA[JIT - 即时编译]]></title><link>https://blog.youkuaiyun.com/robinjwong/article/details/49918453</link><guid>https://blog.youkuaiyun.com/robinjwong/article/details/49918453</guid><author>robinjwong</author><pubDate>Thu, 19 Nov 2015 01:09:46 +0800</pubDate><description><![CDATA[即时编译
即时编译（英语：Just-in-time compilation），又译及时编译、实时编译[3]，动态编译的一种形式，是一种提高程序运行效率的方法。通常，程序有两种运行方式：静态编译与動態直譯。静态编译的程序在执行前全部被翻译为机器码，而直譯执行的则是一句一句边运行边翻译。

即时编译器则混合了这二者，一句一句编译源代码，但是会将翻译过的代码缓存起来以降低性能损耗。相对于静态编译代]]></description><category></category></item><item><title><![CDATA[【并发】Amdahl's Law 阿姆达尔定律]]></title><link>https://blog.youkuaiyun.com/robinjwong/article/details/49872815</link><guid>https://blog.youkuaiyun.com/robinjwong/article/details/49872815</guid><author>robinjwong</author><pubDate>Mon, 16 Nov 2015 22:11:49 +0800</pubDate><description><![CDATA[转自：http://book.2cto.com/201301/12892.html




利用Amdahl定律，可以计算出通过改进计算机某一部分而能获得的性能增益。Amdahl定律表明，使用某种快速执行模式获得的性能改进受限于可使用此种快速执行方式的时间比例。

Amdahl定律定义了使用某一特定功能所获得的加速比（speedup）。加速比是什么？假定我们可以对某一计算机进行某种升]]></description><category></category></item><item><title><![CDATA[【并发】多线程编程中条件变量和虚假唤醒的讨论]]></title><link>https://blog.youkuaiyun.com/robinjwong/article/details/49842785</link><guid>https://blog.youkuaiyun.com/robinjwong/article/details/49842785</guid><author>robinjwong</author><pubDate>Sun, 15 Nov 2015 00:59:07 +0800</pubDate><description><![CDATA[转自：http://blog.youkuaiyun.com/puncha/article/details/8493862




From: http://siwind.iteye.com/blog/1469216

From:http://en.wikipedia.org/wiki/Spurious_wakeup






According to David R. Buten]]></description><category></category></item><item><title><![CDATA[【MacOS】Parallel下安装OpenSUSE]]></title><link>https://blog.youkuaiyun.com/robinjwong/article/details/49385125</link><guid>https://blog.youkuaiyun.com/robinjwong/article/details/49385125</guid><author>robinjwong</author><pubDate>Sat, 24 Oct 2015 15:10:36 +0800</pubDate><description><![CDATA[转自：http://jingyan.baidu.com/article/11c17a2c145301f446e39ddd.html


Mac OS中使用Parallels搭建OpenSUSE虚拟机





最近试着在Mac OS上装了个Open SUSE虚机，线上Mac OS的帮助文档比较少，这里详细记录了一下，给大家做个分享。Parallels和SUSE的ISO各位大神就请]]></description><category></category></item><item><title><![CDATA[【我的问题】没解决的问题]]></title><link>https://blog.youkuaiyun.com/robinjwong/article/details/49236687</link><guid>https://blog.youkuaiyun.com/robinjwong/article/details/49236687</guid><author>robinjwong</author><pubDate>Mon, 19 Oct 2015 00:58:11 +0800</pubDate><description><![CDATA[1. 多进程/多线程并发访问/修改数据库？
表加锁？
2.]]></description><category></category></item><item><title><![CDATA[【DB.PostgreSQL】省略PostgreSQL的SQL语句中的双引号]]></title><link>https://blog.youkuaiyun.com/robinjwong/article/details/48605445</link><guid>https://blog.youkuaiyun.com/robinjwong/article/details/48605445</guid><author>robinjwong</author><pubDate>Sun, 20 Sep 2015 22:40:16 +0800</pubDate><description><![CDATA[转自：http://blog.sina.com.cn/s/blog_4fb490ff01012g5f.html


标准的SQL是不区分大小写的。但是PostgreSQL对于数据库中对象的名字允许使用支持大小写区分的定义和引用方法。方式就是在DDL中用双引号把希望支持大小的对象名括起来。

比如希望创建一个叫AAA的表。如果用CREATE TABLE AAA （...）;的话，创建出来的]]></description><category></category></item><item><title><![CDATA[【Python基础】Python面向对象 - 9 - 类属性，实例属性]]></title><link>https://blog.youkuaiyun.com/robinjwong/article/details/48418199</link><guid>https://blog.youkuaiyun.com/robinjwong/article/details/48418199</guid><author>robinjwong</author><pubDate>Sun, 13 Sep 2015 19:31:39 +0800</pubDate><description><![CDATA[实例属性
实例仅拥有数据属性，它是与某个类的实例相关联的数据值，这些值独立于其他实例或类。当一个实例被释放后，它的属性同时也被清除了。

设置实例的属性可以在实例创建后任意时间进行，也可以在能够访问实例的代码中进行。构造器 __init__() 是设置这些属性的关键点之一。

内建函数 dir() 可以显示类属性，同样还可以打印所有实例属性：

>>> class C():  
..]]></description><category></category></item><item><title><![CDATA[【Python基础】Python面向对象 - 8 - 元类2]]></title><link>https://blog.youkuaiyun.com/robinjwong/article/details/48391753</link><guid>https://blog.youkuaiyun.com/robinjwong/article/details/48391753</guid><author>robinjwong</author><pubDate>Sat, 12 Sep 2015 10:55:53 +0800</pubDate><description><![CDATA[metaclass基础
一般情况下，如果要用类来实现metaclass的话，该类需要继承与 type ，而且通常会重写 type 的 __new__方法老控制创建过程。在metaclass里面定义的方法会成为类的方法，可以直接通过类名来调用。


如何使用metaclass
用类的形式：
类继承于 type， 例如 class Meta(type): pass
将需要使用metacl]]></description><category></category></item><item><title><![CDATA[【Python基础】Python面向对象 - 7 - Mixin & MRO]]></title><link>https://blog.youkuaiyun.com/robinjwong/article/details/48375833</link><guid>https://blog.youkuaiyun.com/robinjwong/article/details/48375833</guid><author>robinjwong</author><pubDate>Fri, 11 Sep 2015 17:46:12 +0800</pubDate><description><![CDATA[转自：http://xiaocong.github.io/blog/2012/06/13/python-mixin-and-mro/




什么是 mixin ?


In object-oriented programming languages, a mixin is a class that provides a certain functionality to be in]]></description><category></category></item><item><title><![CDATA[【Python基础】Python面向对象 - 5 - super()函数]]></title><link>https://blog.youkuaiyun.com/robinjwong/article/details/48369615</link><guid>https://blog.youkuaiyun.com/robinjwong/article/details/48369615</guid><author>robinjwong</author><pubDate>Fri, 11 Sep 2015 10:54:21 +0800</pubDate><description><![CDATA[转自： 
理解Python super



理解 Python super



今天在知乎回答了一个问题，居然一个赞都没有，也是神奇，毕竟这算是我非常认真答的题之一。既然如此就贴过来好了，有些内容之后再补充。

原问题


Python中既然可以直接通过父类名调用父类方法为什么还会存在super函数？
比如
class Child(Parent):
    d]]></description><category></category></item><item><title><![CDATA[【Python基础】Python面向对象 - 4 - 定制类的特殊方法]]></title><link>https://blog.youkuaiyun.com/robinjwong/article/details/48232399</link><guid>https://blog.youkuaiyun.com/robinjwong/article/details/48232399</guid><author>robinjwong</author><pubDate>Fri, 11 Sep 2015 01:37:59 +0800</pubDate><description><![CDATA[在设计类的过程中，若想要类表现出一些特殊行为或者能够响应某些内建函数或操作符，那么就需要构建一些特殊方法。这些特殊方法的标识是方法名以双下划线（__）开头和结尾；除了常用的构造器__init__()外，还有一些常用的特殊方法：
参考：http://www.pythontip.com/blog/post/5225/
基础方法


__new__(self, [arg2,... ...])]]></description><category></category></item><item><title><![CDATA[【Java.Core】Java Date Time 教程]]></title><link>https://blog.youkuaiyun.com/robinjwong/article/details/48344601</link><guid>https://blog.youkuaiyun.com/robinjwong/article/details/48344601</guid><author>robinjwong</author><pubDate>Thu, 10 Sep 2015 15:56:39 +0800</pubDate><description><![CDATA[转自：Java Date Time 教程


原文链接 作者：Jakob Jenkov  译者：魏嘉鹏

目录

Java 8 Date Time APIJava 7 Date Time API

当你初次尝试弄明白怎么去使用Java的date time 的API的时候，那是相当令人困惑的。Therefore I have put together this little tra]]></description><category></category></item></channel></rss>