??xml version="1.0" encoding="utf-8" standalone="yes"?>国产成人精品日本亚洲专区,亚洲毛片一级带毛片基地,人人狠狠综合久久亚洲高清http://www.tkk7.com/xylz/archive/2013/11/05/406019.htmlimxylzimxylzTue, 05 Nov 2013 09:01:00 GMThttp://www.tkk7.com/xylz/archive/2013/11/05/406019.htmlhttp://www.tkk7.com/xylz/comments/406019.htmlhttp://www.tkk7.com/xylz/archive/2013/11/05/406019.html#Feedback14http://www.tkk7.com/xylz/comments/commentRss/406019.htmlhttp://www.tkk7.com/xylz/services/trackbacks/406019.html
  • 工作地点Q北?/li>
  • 世界邦旅行网是一个新型出境自助旅行社区和?sh)子商务开攑^収ͼ以提供“个性化行程定制服务Q高性h(hun)比、高质量境外自助游”ؓ(f)目标?/li>
  • 我们的网站:(x)http://www.shijiebang.com
  • 关于我们Q?a >http://www.shijiebang.com/about/us/
  • B轮数?/li>
  • 招聘职位
    • Java 高/资深工程?/li>
    • PHP 工程?/li>
    • 试工程?/li>
    • 前端工程?/li>
    • Ud开发工E师(Android/iOS)
    • 其它?jng)场、推qѝ运营、品、设计等人才
  • 待遇
    • 与互联网公司看齐+期权 Qh(hun)值几何问自己Q?/li>
  • 特别说明

    • 有github帐号, stackoverflow 有A(ch)献分Z
    • 不会(x)qiang的不投递简?/li>
    • 管融资有点钱,但依然条件艰苦(创业何其艎ͼ(j)
    • 必须自认明(即别h认ؓ(f)自己不聪明,要有q䆾霸气Q?/li>
    • Ҏ(gu)游或者旅行有兴趣
    • 一个能够快速自我成长的环境Q如果不能徏议立卛_L他处
    • 无意义的技术、工兯求没?/li>
  • 最后的最?/p>

    • 历写各种_N的Q徏议不用考虑
  • 联系方式
    • imxylz##gmail.com
  • 更新旉Q?2015/06/16



    imxylz 2013-11-05 17:01 发表评论
    ]]>
    Java 8 入门/新特?/title><link>http://www.tkk7.com/xylz/archive/2013/10/16/405031.html</link><dc:creator>imxylz</dc:creator><author>imxylz</author><pubDate>Tue, 15 Oct 2013 16:33:00 GMT</pubDate><guid>http://www.tkk7.com/xylz/archive/2013/10/16/405031.html</guid><wfw:comment>http://www.tkk7.com/xylz/comments/405031.html</wfw:comment><comments>http://www.tkk7.com/xylz/archive/2013/10/16/405031.html#Feedback</comments><slash:comments>8</slash:comments><wfw:commentRss>http://www.tkk7.com/xylz/comments/commentRss/405031.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/xylz/services/trackbacks/405031.html</trackback:ping><description><![CDATA[<p>2013/09/05 已经发布?a >JDK 8</a>?a >M8 Developer Preview</a>版本??a >M7(2013/06/13)</a><span id="lrdrtfr" class="Apple-converted-space"> </span>所有新Ҏ(gu)已l封版, M8 作ؓ(f)开发者预览版Q基本上可用Q可?a >Oracle|站下蝲</a>?按照<a >计划</a><a >GA(General Availability)</a>版本 应该?014q?月䆾发布Q如果顺利正式版估计和GA版本相同Q也是说在明年3月䆾正式用JDK 8了?/p> <p>q次JDK 8 一共带来了<a >55个新Ҏ(gu)?/a>Q目前所有API应该都已l冻l, 正在q行零bug试。这ơ更新的力度比JDK 6/JDK 7都要大,延期了几ơ,也非o(h)人期待?我个人准备花费几个月的学?fn)时_(d)努力跟上Java 8的发布节奏。当然由于对Java 7不太熟?zhn)Q因此同时也学习(fn)下Java 7的API?/p> <p>目前支持JDK 8的IDE有:(x)</p> <ul> <li><a >Netbeans 7.4</a></li> <li><a >IDEA 12</a></li> <li><a >非官方的Eclipse</a>, 官方需要到明年Java 8正式发布以后</li> </ul> <p>q所有JDK 8的特性IDE都能支持Q因此需要随时更新IDE以便获得更好的开发环境,推荐使用IDEA?/p> <br /> <h2>Java 8 新特性入?/h2> <ol> <li>旉?/li> <li>Lambda</li> <li>式操作 – Stream API</li> <li>接口默认Ҏ(gu) – Default Method</li> <li>日期和时?– Date & Time (JSR 310)</li> <li>集合扩展 – Collections API</li> <li>q发操作 – Concurrency API additions</li> <li>IO/NIO 扩展 – IO/NIO API additions</li> <li>反射和注解更?– Reflection and annotation changes</li> <li>Base64</li> <li>其它各种更新 – Other additions</li> </ol> <hr /> <h2>Java 7 新特性入?/h2> <ol> <li>字符串在switch中的使用</li> <li>try-with-resources 自动释放资源</li> <li>泛型实例创徏的类型推?/li> <li>多异常catch操作</li> <li>文gAPI扩展</li> <li>集合API更新</li> <li>q发~程API更新</li> <li>Unicode 6.0的支?/li> <li>JDBC 4.1 支持 RowSet 1.1</li> </ol> <p> [更新旉: 2013/10/16] <br/> [原文地址Q?a target="_blank" >Java 8 入门/新特?/a>] </p><img src ="http://www.tkk7.com/xylz/aggbug/405031.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/xylz/" target="_blank">imxylz</a> 2013-10-16 00:33 <a href="http://www.tkk7.com/xylz/archive/2013/10/16/405031.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Bash命o(h)路径的缓?/title><link>http://www.tkk7.com/xylz/archive/2013/10/13/path-cache-of-bash-command.html</link><dc:creator>imxylz</dc:creator><author>imxylz</author><pubDate>Sun, 13 Oct 2013 14:16:00 GMT</pubDate><guid>http://www.tkk7.com/xylz/archive/2013/10/13/path-cache-of-bash-command.html</guid><wfw:comment>http://www.tkk7.com/xylz/comments/404935.html</wfw:comment><comments>http://www.tkk7.com/xylz/archive/2013/10/13/path-cache-of-bash-command.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/xylz/comments/commentRss/404935.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/xylz/services/trackbacks/404935.html</trackback:ping><description><![CDATA[     摘要: Bash Z提高命o(h)的解析速度Q将解析q的命o(h)的全路径保存在hash表中Q因此下ơ执行的时候就无需q行再次解析。如果在shell中修改了已经~存q的命o(h)路径Q那么bash可能不能立即生效。这样就?x)发生命令不能解析或者文件不存在的问题,管可执行文件确实存在?nbsp; <a href='http://www.tkk7.com/xylz/archive/2013/10/13/path-cache-of-bash-command.html'>阅读全文</a><img src ="http://www.tkk7.com/xylz/aggbug/404935.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/xylz/" target="_blank">imxylz</a> 2013-10-13 22:16 <a href="http://www.tkk7.com/xylz/archive/2013/10/13/path-cache-of-bash-command.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>MAC下批量{换PNG和JPEGhttp://www.tkk7.com/xylz/archive/2013/10/08/404759.htmlimxylzimxylzTue, 08 Oct 2013 09:17:00 GMThttp://www.tkk7.com/xylz/archive/2013/10/08/404759.htmlhttp://www.tkk7.com/xylz/comments/404759.htmlhttp://www.tkk7.com/xylz/archive/2013/10/08/404759.html#Feedback1http://www.tkk7.com/xylz/comments/commentRss/404759.htmlhttp://www.tkk7.com/xylz/services/trackbacks/404759.html sips的名U功能非常强大,参?a target="_blank" >帮助文档?br /> q里我们只用到其中的一个功能,转换囄格式?br />
    命o(h)参考:(x)
        sips -s format jpeg --out b.jpg a.png
    写一个png扚w转换jpg的脚本:(x)

        cat  
    ~/bin/png2jpg
        #
    !/bin/bash
        # convert png files to jpeg files
        # usage: png2jpg 
    <file>

        
    for f in "$@"
        
    do
            sips 
    -s format jpeg --out "${f%.*}.jpg" "$f"
        done
    同样写一个jpg扚w转换png的脚本:(x)

        cat 
    ~/bin/jpg2png
        #
    !/bin/bash
        # convert jpeg files to png files
        # usage: jpg2png 
    <file>

        
    for f in "$@"
        
    do
            sips 
    -s format png --out "${f%.*}.png" "$f"
        done
    使用例子Q?br />

        ?nbsp;
    ~/Downloads $ png2jpg QQ20131008-*.png
        
    /Users/adyliu/Downloads/QQ20131008-2.png
          
    /Users/adyliu/Downloads/QQ20131008-2.jpg
        
    /Users/adyliu/Downloads/QQ20131008-3.png
          
    /Users/adyliu/Downloads/QQ20131008-3.jpg
        
    /Users/adyliu/Downloads/QQ20131008-4.png
          
    /Users/adyliu/Downloads/QQ20131008-4.jpg
        ?nbsp;
    ~/Downloads $ ll QQ*
        
    -rw-r--r--  1 adyliu  staff    67K 10  8 15:43 QQ20131008-2.jpg
        
    -rw-r--r--1 adyliu  staff    88K 10  8 15:31 QQ20131008-2.png
        
    -rw-r--r--  1 adyliu  staff    23K 10  8 15:43 QQ20131008-3.jpg
        
    -rw-r--r--1 adyliu  staff    34K 10  8 15:31 QQ20131008-3.png
        
    -rw-r--r--  1 adyliu  staff    47K 10  8 15:43 QQ20131008-4.jpg
        
    -rw-r--r--1 adyliu  staff    44K 10  8 15:31 QQ20131008-4.png

    参考资?
    1. sips doc
    2. Resizing images using the command line
    3. Shell Parameter Expansion
    4. Extract filename and extension in bash
    原文地址Q?a target="_blank" >http://imxylz.com/blog/2013/10/08/batch-convert-png-to-jpeg-on-mac-os/

    imxylz 2013-10-08 17:17 发表评论
    ]]>
    Octopress加速Google字体渲染http://www.tkk7.com/xylz/archive/2013/09/22/move-google-fonts-to-local-server.htmlimxylzimxylzSun, 22 Sep 2013 13:42:00 GMThttp://www.tkk7.com/xylz/archive/2013/09/22/move-google-fonts-to-local-server.htmlhttp://www.tkk7.com/xylz/comments/404298.htmlhttp://www.tkk7.com/xylz/archive/2013/09/22/move-google-fonts-to-local-server.html#Feedback0http://www.tkk7.com/xylz/comments/commentRss/404298.htmlhttp://www.tkk7.com/xylz/services/trackbacks/404298.html阅读全文

    imxylz 2013-09-22 21:42 发表评论
    ]]>
    JRebel 6.0.0 Crack (20141216更新)http://www.tkk7.com/xylz/archive/2013/09/15/404098.htmlimxylzimxylzSun, 15 Sep 2013 15:24:00 GMThttp://www.tkk7.com/xylz/archive/2013/09/15/404098.html阅读全文

    imxylz 2013-09-15 23:24 发表评论
    ]]>
    甌SSL证书?qing)Nginx支持HTTPShttp://www.tkk7.com/xylz/archive/2013/09/11/403965.htmlimxylzimxylzWed, 11 Sep 2013 13:58:00 GMThttp://www.tkk7.com/xylz/archive/2013/09/11/403965.htmlhttp://www.tkk7.com/xylz/comments/403965.htmlhttp://www.tkk7.com/xylz/archive/2013/09/11/403965.html#Feedback0http://www.tkk7.com/xylz/comments/commentRss/403965.htmlhttp://www.tkk7.com/xylz/services/trackbacks/403965.html阅读全文

    imxylz 2013-09-11 21:58 发表评论
    ]]>
    随机选择集合的子元素集合http://www.tkk7.com/xylz/archive/2013/08/17/402978.htmlimxylzimxylzSat, 17 Aug 2013 09:44:00 GMThttp://www.tkk7.com/xylz/archive/2013/08/17/402978.htmlhttp://www.tkk7.com/xylz/comments/402978.htmlhttp://www.tkk7.com/xylz/archive/2013/08/17/402978.html#Feedback3http://www.tkk7.com/xylz/comments/commentRss/402978.htmlhttp://www.tkk7.com/xylz/services/trackbacks/402978.html我需要一个从集合N中随机选择M个子元素的算法?当然最好的办法是将集合打ؕ序Q然后从中选择前M个元素即可?Java中现成的API可以使用Q?/div>
    java.util.Collections.shuffle(List<?>)
    此算法非常简单,循环Nơ,每次长度减少1Q随取其中一个元素,然后交换其对U元素?/div>
    public static void shuffle(List<?> list, Random rnd) {
        int size = list.size();
        if (size < SHUFFLE_THRESHOLD || list instanceof RandomAccess) {
            for (int i=size; i>1; i--)
                swap(list, i-1, rnd.nextInt(i));
        } else {
            Object arr[] = list.toArray();

            // Shuffle array
            for (int i=size; i>1; i--)
                swap(arr, i-1, rnd.nextInt(i));

            // Dump array back into list
            ListIterator it = list.listIterator();
            for (int i=0; i<arr.length; i++) {
                it.next();
                it.set(arr[i]);
            }
        }
    }

    有点意思的swap函数

    public static void swap(List<?> list, int i, int j) {
        final List l = list;
        l.set(i, l.set(j, l.get(i)));
    }

    其实我们的需求很单,在基本不变的集合中,多次重复随机获取其子集,至于子集是否有序或者随Z重要的, 重要的是原集合中的每个元素都有相似的概率出现在子集合中?/div>

    考虑到性能以及(qing)q发讉KQ多U程Q的需要,我想C一个简单的法Q?/div>
    l定N个元素集合,从中选择M(0<M<=N)个元素的办法是,
    1. 随机选择索引K(0<=K<N), i=0, I子?/li>
    2. 取有效元素N(k-i),N(k+i) 加入未满子集M
    3. i+=1, 重复(2) 直到子集M已满
    4. l止
    q样取出来的元素虽然和原始集序有一定的关系Q但是每个元素在子集里出现的概率相当Q满结果要求?最后生成的法如下Q?/div>
    public static <T> List<T> randomList(List<T> views, int max) {

        final int size = views.size();
        int index = RandomUtils.nextInt(size);
        //
        List<T> ret = new ArrayList<T>(max);
        int low = index - 1, high = index;
        while (max > 0 && (low >= 0 || high < size)) {
            if (low >= 0 && max-- > 0) {
                ret.add(views.get(low));
            }
            if (high < size && max-- > 0) {
                ret.add(views.get(high));
            }
            low--;
            high++;
        }
        return ret;
    }

    此算法满_下特点:(x)
    1. _?/li>
    2. U程安全Q原始集合不变)(j)
    3. 子元素出现概率相当(未经数学证明

    另外Qstackoverflow上也有一些参考链接:(x)



    imxylz 2013-08-17 17:44 发表评论
    ]]>Python 基础文g操作http://www.tkk7.com/xylz/archive/2013/02/24/395677.htmlimxylzimxylzSun, 24 Feb 2013 12:55:00 GMThttp://www.tkk7.com/xylz/archive/2013/02/24/395677.htmlhttp://www.tkk7.com/xylz/comments/395677.htmlhttp://www.tkk7.com/xylz/archive/2013/02/24/395677.html#Feedback0http://www.tkk7.com/xylz/comments/commentRss/395677.htmlhttp://www.tkk7.com/xylz/services/trackbacks/395677.html

    File - 基础文g操作

    学习(fn)一门语aQ我L喜欢从文件开始。文本文件的d操作是我比较在意的基本功能?在这斚wQJava语言功能比较强大Q用到的设计模式也非常多。只是用v来太q繁琐?而Python在这斚w表现非常好,z不失功能,强大不失性能Q通俗不失优雅Q值得U赞?/p>

    我们从一个最单的开始?/p>

    with open('/etc/resolv.conf') as f:
    print(f.read())

    q里有用?a style="margin: 0px; padding: 0px; border: 0px; font-family: inherit; font-style: inherit; font-variant: inherit; line-height: inherit; vertical-align: baseline; color: #751590; -webkit-transition: color 0.3s; white-space: pre-wrap; word-wrap: break-word;">with语法来关闭文件句柄?/p>

    open()

    首先来了解下open()内置函数?/p>

    open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)
    Open file and return a corresponding file object. If the file cannot be opened, an OSError is raised.

    open()的参C多,通常需要关注的是mode/encoding/errors/newline{?/p>

    最?jng)_?/h3>
    (1) d文g必须传入字符~码encoding 
    (2) 用完的流需要关闭,推荐使用with操作
    (3) 换行W尽可能的用UNIX格式(\n)Q尽python可以转换
    (4) 如果可以的话可能的使用utf-8~码来处理非ascii字符Q不要依赖操作系l的~码

    脓(chung)?/p>

    多个文g同时操作可用with的语法:(x)

    with open('/etc/hosts','r') as f,open('/tmp/hosts','w') as t:
    //do something

    或?/p>

    with f=open('/etc/hosts'),t=open('/tmp/hosts','w'):
    // do something

    file object

    文g对象描述的是一U?#8220;?#8221;操作Q通常支持read()或者write()Ҏ(gu)?q里的文件对象是一U概念上?#8220;文g对象”Q除了常见的真是的磁盘文Ӟq可以是 标准输入输出文g(stdin/stdout/stderr)Q内存缓冲区(StringIO,cStringIO)Q?socketQpipes{?/p>

    q在io模块中有具体的描q?/p>

    文本操作和二q制操作有一些区别。分别介l?/p>

    Text I/O

    如果mode中包含tQ默认)(j)Q那么返回的是一个纯文本操作?/p>

    read() 是读取文本的最单的Ҏ(gu)。返回的是字W串形式的结果(和参数encoding有关Q?/p>

    read(n)
    Read and return at most n characters from the stream as a single str. If n is negative or None, reads until EOF.

    在很多安装脚本中有:(x)

    readme=open('./README.md').read() 

    cM的用法。这在一个快速结束的E序中问题不大。在正式的服务中应该随时关闭文g句柄释放资源?/p>

    脓(chung)士:(x)

    如果已经d到文件末,read()则返回空字符?'?

    如果要读取一行,使用readline()Ҏ(gu)?/p>

    readline(limit=-1)
    Read until newline or EOF and return a single str. If the stream is already at EOF, an empty string is returned. If limit is specified, at most limit characters will be read.

    d一行意味着和行l束W有养Iq个有点复杂?/p>

    d多行Q用readlines()Ҏ(gu)。这返回一个字W串列表。readlines()也可以限制最多读取多个字符?/p>

    脓(chung)士:(x)

    readline(limit=-1)和readlines(limit=-1)对limit的描qC太一致?
    readline(limit=-1)描述的是d一行,最多不过limit个字W(不是字节Q,因此有可能结果不是某一行的l束?
    readlines(limit=-1)描述的是d字符Q直到l(f)imit个字W所在的行结束。也是q回的结果一定是某一行的l束(除非EOF)?

    例如Q?br />>>> open('/tmp/x1','w').write('Python真是一个好同学\n只是限制被割裂成两个版本了\n我支持python3.x')
    40
    >>> open('/tmp/x1','r').readline(10)
    'Python真是一?
    >>> open('/tmp/x1','r').readlines(10)
    ['Python真是一个好同学\n']

    readlines(limit)是一个难以理解的逻辑。如果可以不要随便传输一个参数?a style="margin: 0px; padding: 0px; border: 0px; font-family: inherit; font-style: inherit; font-variant: inherit; line-height: inherit; vertical-align: baseline; color: #751590; -webkit-transition: color 0.3s; white-space: pre-wrap; word-wrap: break-word;">参考这?/a>?/p>


    写入文本可用write(s)Ҏ(gu)Q?/p>

    write(s) Write the string s to the stream and return the number of characters written. 

    写入的是字符Ԍ而不是字节。如果要写入多行字符Ԍ可以使用writelines(lines)Ҏ(gu)?/p>

    脓(chung)士:(x)

    write(s)和writelines(lines)不会(x)行l束W写入文件流。因此需要手动写入行l束W?

    Binary I/O

    二进制流和文本流cMQ只是二q制没有encoding一说。打开二进制流需要传入参数mode中包?#8217;b’?/p>

    例如Q?/p>

    >>> type(open('/etc/hosts','rb').read())
    <class 'bytes'>

    Ҏ(gu)文本,二进制流有一些小的差别:(x)

    • read()q回的值是字节(bytes)
    • readline()q回的值是字节(bytes)Q包括换行符
    • readlines()q回的值是字节(bytes)列表Q包括换行符
    • write()参数可以?a style="margin: 0px; padding: 0px; border: 0px; font-family: inherit; font-style: inherit; font-variant: inherit; line-height: inherit; vertical-align: baseline; color: #751590; -webkit-transition: color 0.3s; white-space: pre-wrap; word-wrap: break-word;">bytes或?a style="margin: 0px; padding: 0px; border: 0px; font-family: inherit; font-style: inherit; font-variant: inherit; line-height: inherit; vertical-align: baseline; color: #751590; -webkit-transition: color 0.3s; white-space: pre-wrap; word-wrap: break-word;">bytearray
    • readinto(b)是将内容d到bytearray b中,q回d的字节数?/li>

    其它文g操作

    除了read/writeҎ(gu)Q文件对象还有一些其它的内置Ҏ(gu)Q?/p>

    • file.close() 关闭文g
    • file.fileno() 获取文g描述W(整Ş|(j)
    • file.flush() 对于有缓冲区的写操作Q刷新缓冲区
    • file.tell() q回当前的字节位置
    • file.seek() Ud文g的当前位置
    • file.truncate() 截断文g大小

    I/O介绍更多的知识?/p>

    imxylz 2013-02-24 20:55 发表评论
    ]]>
    Crack JRebel 5.3.1http://www.tkk7.com/xylz/archive/2012/12/26/393498.htmlimxylzimxylzWed, 26 Dec 2012 04:02:00 GMThttp://www.tkk7.com/xylz/archive/2012/12/26/393498.htmlhttp://www.tkk7.com/xylz/comments/393498.htmlhttp://www.tkk7.com/xylz/archive/2012/12/26/393498.html#Feedback31http://www.tkk7.com/xylz/comments/commentRss/393498.htmlhttp://www.tkk7.com/xylz/services/trackbacks/393498.html
    我一直?.1.0版本的jrebelQ是social免费版本的。social版本?x)在启动时连接jrebel服务器(myrebel)获取licenseQ同时会(x)一些热部v的次数、节U时间、性能{日志提交到q程服务器?br /> 最q中国网l抽风,q接jrebel服务器特别慢Q导致每ơ启动的时候都需?0s以上的时间才能得到服务器的响应(加上自动更新(g))(j)。最Z个技术控Q很昄Q我不能忍受q种行ؓ(f)?br />
    只好研究如何破解它?br /> ?.0开始jrebel的؜淆机制做得非常棒Q基本上无法q行反编译修改了。好在jrebel比较厚道Q一直兼Ҏ(gu)版本的license(g)机Ӟd?008q写的破解工E,利解决?.1.0版本?br /> 然后下蝲最新的5.1.2Q?0121217Q版本,试了下居然没有成功。太囧了。这是一个小版本Qؓ(f)何改动如此大Q?br />
    打开debug日志后发玎ͼҎ(gu)没有加载j(lu)rebel.jar里面的License文g。反~译源码看了下,果然Q从5.1.2版本开始不再加载j(lu)rebel.jar里面的license文g了,该从用户ȝ录,jrebel安装目录{获取license文g。这样就没法通过一个jar包分发jrebel了?br /> jrebel.lic拯到用户主目录?jrebel目录卛_?br />
    ~ $ ls ~/.jrebel/jrebel.lic 
    /Users/adyliu/.jrebel/jrebel.lic

    来两张截图?br />
    jrebel 5.1.2 crack
    jrebel 5.1.2 crack

    下蝲地址


    Updated 2013/03/25
        JRebel更新?.2.0版本Q所以可以放Z个低版本Q我一直用)(j)5.1.2?.1.3暂时不去解决了?br />


    Updated 2013/04/17
        JRebel 更新?.2.2版本Q所以可以放Z个低版本5.2.0?br />

    Updated 2013/06/06
        JRebel 更新?.3.0版本Q所以可以放Z个低版本5.2.2?br />

    Updated 2013/07/12
        JRebel 更新?.3.1版本Q所以可以放Z个低版本5.3.0?br />

    Updated 2013/09/15
        最新版本的下蝲地址在:(x)http://www.tkk7.com/xylz/archive/2013/09/15/404098.html

    PS:
         吐槽下,JRebel支持的功能越来越多,D本n来大了,版本5.x已经?M了!Q!

     

    关键词:(x) JRebel 5.3.1 crack, JRebel 5.3.0 crack, JRebel 5.2.2 crack, JRebel 5.2.0 crack, JRebel 5.1.2 crack,JRebel 5.1.0 crack, JRebel 5.x crack



    imxylz 2012-12-26 12:02 发表评论
    ]]>
    SQLite3 C语言API入门http://www.tkk7.com/xylz/archive/2012/09/25/388519.htmlimxylzimxylzTue, 25 Sep 2012 08:34:00 GMThttp://www.tkk7.com/xylz/archive/2012/09/25/388519.htmlhttp://www.tkk7.com/xylz/comments/388519.htmlhttp://www.tkk7.com/xylz/archive/2012/09/25/388519.html#Feedback0http://www.tkk7.com/xylz/comments/commentRss/388519.htmlhttp://www.tkk7.com/xylz/services/trackbacks/388519.htmlSQLite3 C语言API入门

    下蝲SQLite3

    我们下蝲sqlite源码?/a>Q只需要其中的sqlite3.c、sqlite.h卛_?/p>

    最单的一个创操作

    #include <stdio.h>
    #include "sqlite3.h"

    int main(int argc,char *argv[]){
        const char *sql_create_table="create table t(id int primary key,msg varchar(128))";
        char *errmsg = 0;
        int ret = 0;

        sqlite3 *db = 0;
        ret = sqlite3_open("./sqlite3-demo.db",&db);
        if(ret != SQLITE_OK){
            fprintf(stderr,"Cannot open db: %s\n",sqlite3_errmsg(db));
            return 1;
        }
        printf("Open database\n");

        ret = sqlite3_exec(db,sql_create_table,NULL,NULL,&errmsg);
        if(ret != SQLITE_OK){
            fprintf(stderr,"create table fail: %s\n",errmsg);
        }
        sqlite3_free(errmsg);
        sqlite3_close(db);

        printf("Close database\n");

        return 0;
    }



    在这个操作中我们执行了如下操作:(x)

    • 打开数据?/li>
    • 执行SQL语句
    • 关闭数据?/li>

    当然q中间会(x)有一些状态的判断以及(qing)内存指针的释攄?/p>

    打开数据库的API如下Q?br />

    int sqlite3_open(
      const char *filename,   /* Database filename (UTF-8) */
      sqlite3 **ppDb          /* OUT: SQLite db handle */
    );
    q里?x)引入一个非常复杂的sqlite3的数据结构。这个根据需要以后酌情了解些?

     

    打开数据库除了这UŞ式意外,q有sqlite3_open、sqlite3_open16、sqlite3_open_v2几种形式Q基本上cM?/p>

    大部分sql操作都可以通过sqlite3_exec来完成,它的API形式如下Q?br />

    int sqlite3_exec(
      sqlite3*,                                  /* An open database */
      const char *sql,                           /* SQL to be evaluated */
      int (*callback)(void*,int,char**,char**),  /* Callback function */
      void *,                                    /* 1st argument to callback */
      char **errmsg                              /* Error msg written here */
    );

     

    各个参数的意义ؓ(f)Q?/p>

    • sqlite3描述的是数据库句?/li>
    • sql 要执行的SQL语句
    • callback回调函数
    • void *回调函数的第一个参?/li>
    • errmsg错误信息Q如果没有SQL问题则gؓ(f)NULL

    回调函数式一个比较复杂的函数。它的原型是q样?

    int callback(void *params,int column_size,char **column_value,char **column_name){

     

    每一个参数意义如下:(x)

    • params是sqlite3_exec传入的第四个参数
    • column_size是结果字D늚个数
    • column_value是返回记录的一位字W数l指?/li>
    • column_name是结果字D늚名称

    通常情况下callback在select操作中会(x)使用刎ͼ其是处理每一行记录数。返回的l果每一行记录都?x)调用?#8220;回调函数”?如果回调函数q回了非0Q那么sqlite3_exec返回SQLITE_ABORTQƈ且之后的回调函数也不?x)执行,同时未执行的子查询也不?x)l箋执行?/p>

    对于更新、删除、插入等不需要回调函数的操作Qsqlite3_exec的第三、第四个参数可以传入0或者NULL?/p>

    通常情况下sqlite3_execq回SQLITE_OK=0的结果,?l果可以通过errmsg来获取对应的错误描述?/p>

    Windows下编译:(x)

    D:\home\dev\c>cl /nologo /TC sqlite3-demo.c sqlite3.c 

    GCC下编?

    $ gcc -o sqlite3-demo.bin sqlite3-demo.c sqlite3.c 

    删除表操?/h2>

    Z防止垃圾数据Q我们在加蝲数据库的时候删除表操作?/p>

    单的删除操作可以直接使用sqlite3_exec卛_。这里不需要回调函C?qing)回调函数的参数?当然需要可以关注sqlite3_execq回的结果是否ؓ(f)SQLITE_OK的倹{?br />

        const char *sql_drop_table="drop table if exists t";
        const char *sql_create_table="create table t(id int primary key,msg varchar(128))";

        sqlite3_exec(db,sql_drop_table,0,0,&errmsg);
        sqlite3_exec(db,sql_create_table,0,0,&errmsg);

     

    插入数据

    插入W一条数?br />

        ret = sqlite3_exec(db,"insert into t(id,msg) values(1,'Ady Liu')",NULL,NULL,&errmsg);
        printf("Insert a record %s\n",ret == SQLITE_OK ? "OK":"FAIL");

     

    q回值ret为SQLITE_OKx作成功?/p>

    插入多条数据Qƈ删除数据

        ret = sqlite3_exec(db,"insert into t(id,msg) values(1,'Ady Liu')",NULL,NULL,&errmsg);
        printf("Insert a record %s\n",ret == SQLITE_OK ? "OK":"FAIL");
        ret = sqlite3_exec(db,"insert into t(id,msg) values(2,'IMXYLZ')",NULL,NULL,&errmsg);
        printf("Insert a record %s\n",ret == SQLITE_OK ? "OK":"FAIL");
        ret = sqlite3_exec(db,"delete from t where id < 3",NULL,NULL,&errmsg);
        printf("Delete records: %s\n",ret == SQLITE_OK ? "OK":"FAIL");
    插入多条数据Q简单的使用sqlite3_execq行SQL执行卛_。当然这里是完整的SQL字符丌Ӏ?

     

    预编译操?/h2>
        int i = 0;
        sqlite3_stmt *stmt;
        char ca[255];

        //prepare statement
        sqlite3_prepare_v2(db,"insert into t(id,msg) values(?,?)",-1,&stmt,0);
        for(i=10;i<20;i++){
            sprintf(ca,"HELLO#%i",i);
            sqlite3_bind_int(stmt,1,i);
            sqlite3_bind_text(stmt,2,ca,strlen(ca),NULL);
            sqlite3_step(stmt);
            sqlite3_reset(stmt);
        }
        sqlite3_finalize(stmt);
    预编译操作比较麻?ch)的Q完整的预编译操作的程是:(x)
    1. 通过sqlite3_prepare_v2()创徏一个sqlite3_stmt对象
    2. 通过sqlite3_bind_*()l定预编译字D늚?/li>
    3. 通过sqlite3_step()执行SQL语句
    4. 通过sqlite3_reset()重置预编译语句,重复操作2多次
    5. 通过sqlite3_finalize()销毁资?/li>

    sqlite3_prepare_v2()有个多种cM的Ş式,完整的API语法是:(x)

    int sqlite3_prepare(
      sqlite3 *db,            /* Database handle */
      const char *zSql,       /* SQL statement, UTF-8 encoded */
      int nByte,              /* Maximum length of zSql in bytes. */
      sqlite3_stmt **ppStmt,  /* OUT: Statement handle */
      const char **pzTail     /* OUT: Pointer to unused portion of zSql */
    );

     

    各个参数的定义ؓ(f)Q?/p>

    • db为sqlite3的句?/li>
    • zSql执行的SQL语句
    • nByte执行语句在zSql中的最大长度,如果是负敎ͼ那么需要重新自动计?/li>
    • ppStmt为预~译后的句柄
    • pzTail预编译后剩下的字W串Q未预编译成功或者多余的Q的指针Q通常没什么用Q传?或者NULL卛_?/li>


    l定参数sqlite3_bind_*有多UŞ式,分别对应不同的数据类?

    int sqlite3_bind_blob(sqlite3_stmt*, intconst void*, int n, void(*)(void*));
    int sqlite3_bind_double(sqlite3_stmt*, intdouble);
    int sqlite3_bind_int(sqlite3_stmt*, intint);
    int sqlite3_bind_int64(sqlite3_stmt*, int, sqlite3_int64);
    int sqlite3_bind_null(sqlite3_stmt*, int);
    int sqlite3_bind_text(sqlite3_stmt*, intconst char*, int n, void(*)(void*));
    int sqlite3_bind_text16(sqlite3_stmt*, intconst void*, intvoid(*)(void*));
    int sqlite3_bind_value(sqlite3_stmt*, intconst sqlite3_value*);
    int sqlite3_bind_zeroblob(sqlite3_stmt*, intint n);

     


    预编译SQL语句中可以包含如下几UŞ式:(x)

    • ?
    • ?NNN
    • :VVV
    • @VVV
    • $VVV

    NNN代表数字QVVV代表字符丌Ӏ?/p>

    如果?或?NNNQ那么可以直接sqlite3_bind_*()q行操作Q如果是字符Ԍq需要通过sqlite3_bind_parameter_index()获取对应的indexQ然后再调用sqlite3_bind_*()操作。这通常用于构造不定条件的SQL语句Q动态SQL语句Q?/p>

    查询操作

    回调函数的解释参考最上面的描q?首先声明一个回调函数?/p>

    int print_record(void *,int,char **,char **); 


    查询代码

        //select data
        ret = sqlite3_exec(db,"select * from t",print_record,NULL,&errmsg);
        if(ret != SQLITE_OK){
            fprintf(stderr,"query SQL error: %s\n",errmsg);
        }

     

    现在定义回调函数Q只是简单的输出字段倹{?br />

    int print_record(void *params,int n_column,char **column_value,char **column_name){
        int i;
        for(i=0;i<n_column;i++){
            printf("\t%s",column_value[i]);
        }
        printf("\n");
        return 0;
    }

     

    不用回调的查询操作

    定义使用的变?/p>

     char **dbresult; int j,nrow,ncolumn,index; 

    查询操作

        //select table
        ret = sqlite3_get_table(db,"select * from t",&dbresult,&nrow,&ncolumn,&errmsg);
        if(ret == SQLITE_OK){
            printf("query %i records.\n",nrow);
            index=ncolumn;
            for(i=0;i<nrow;i++){
                printf("[%2i]",i);
                for(j=0;j<ncolumn;j++){
                    printf(" %s",dbresult[index]);
                    index++;
                }
                printf("\n");
            }
        }
        sqlite3_free_table(dbresult);

     

    sqlite3_get_table的API语法Q?br />

    int sqlite3_get_table(
      sqlite3 *db,          /* An open database */
      const char *zSql,     /* SQL to be evaluated */
      char ***pazResult,    /* Results of the query */
      int *pnRow,           /* Number of result rows written here */
      int *pnColumn,        /* Number of result columns written here */
      char **pzErrmsg       /* Error msg written here */
    );
    void sqlite3_free_table(char **result);

     

    其中Q?/p>

    • db是sqlite3的句?/li>
    • zSql是要执行的sql语句
    • pazResult是执行查询操作的q回l果?/li>
    • pnRow是记录的行数
    • pnColumn是记录的字段个数
    • pzErrmsg是错误信?/li>

    ׃sqlite3_get_table是sqlite3_exec的包装,因此q回的结果和sqlite3_execcM?/p>

    pazResult是一?pnRow+1)*pnColumnl果集的字符串数l,其中前pnColumn个结果是字段的名Uͼ后pnRow行记录是真实的字D|如果某个字段为空Q则对应gؓ(f)NULL?/p>

    最后需要通过sqlite3_free_table()释放完整的结果集?/p>

    更新操作

     sqlite3_exec(db,"update t set msg='MESSAGE#10' where id=10",NULL,NULL,&errmsg); 

    当然了,我们也可以用预~译Ҏ(gu)q行更新操作?/p>

    受媄(jing)响的记录?/h2>

    我们可以使用sqlite3_change(sqlite3 *)的API来统计上一ơ操作受影响的记录数?/p>

     ret = sqlite3_exec(db,"delete from t",NULL,NULL,&errmsg); 
    if(ret == SQLITE_OK){
    printf("delete records: %i\n",sqlite3_changes(db));
    }

    ȝ

    q里我们接触了SQLITE3?3个APIQ?/p>

    • sqlite3_open()
    • sqlite3_exec()
    • sqlite3_close()
    • sqlite3_prepare_v2
    • sqlite3_bind_*()
    • sqlite3_bind_parameter_index()
    • sqlite3_step()
    • sqlite3_reset()
    • sqlite3_finalize()
    • sqlite3_get_table
    • sqlite3_change()
    • sqlite3_free()
    • sqlite3_free_table()

    事实上截止到SQLITE3.7.14(2012/09/03) 一共提供了204个API函数Q?a rel="nofollow" style="text-decoration: none; ">http://www.sqlite.org/c3ref/funclist.htmlQ?/a>

    但最_的API函数大概?个:(x)

    • sqlite3_open()
    • sqlite3_prepare()
    • sqlite3_step()
    • sqlite3_column()
    • sqlite3_finalize()
    • sqlite3_close()

    核心API也就10个(在精API基础上增?个)(j)Q?/p>

    • sqlite3_exec()
    • sqlite3_get_table()
    • sqlite3_reset()
    • sqlite3_bind()

    因此掌握hq是比较Ҏ(gu)的?br />
    完整的源码地址Q?
    https://gist.github.com/3780669



    imxylz 2012-09-25 16:34 发表评论
    ]]>
    Fedora 17 降一把辛酸泪http://www.tkk7.com/xylz/archive/2012/06/07/380210.htmlimxylzimxylzThu, 07 Jun 2012 04:13:00 GMThttp://www.tkk7.com/xylz/archive/2012/06/07/380210.htmlhttp://www.tkk7.com/xylz/comments/380210.htmlhttp://www.tkk7.com/xylz/archive/2012/06/07/380210.html#Feedback9http://www.tkk7.com/xylz/comments/commentRss/380210.htmlhttp://www.tkk7.com/xylz/services/trackbacks/380210.html

    Fedora 17发布Q第二天立马更新了?首先光是更新折腾了很久Qȝ弄好了。结果发C个巨大的问题。gtk2与eclipse不兼宏V?/p>

    不兼容的后果是L报这L(fng)错误Q命令行启动eclipseQ?nbsp;eclipse -debug -consolelogQ:(x)

    (Eclipse:21798): GLib-GIO-CRITICAL **: g_dbus_proxy_new_for_bus_sync: assertion `g_dbus_is_name (name)' failed

    (Eclipse:21798): GLib-GIO-CRITICAL **: g_dbus_proxy_new_for_bus_sync: assertion `g_dbus_is_name (name)' failed

    (Eclipse:21798): GLib-GIO-CRITICAL **: g_dbus_proxy_new_for_bus_sync: assertion `g_dbus_is_name (name)' failed

    表现为打开~辑器后L有很多内Ҏ(gu)法显C,昄为空白,必须重新选定或者拖动滚动条才能昄?/p>

    qo(h)人崩溃啊Q!Q?/strong>

    q下(zhn)剧了,要知道我的开发工作就是在ecilpse下进行的?/p>

    好吧Q上|找找。发现有些h也遇C兼容问题。但是没有一个解军_法?/p>

    我的解决q程是这P(x)

    • 更新整个fedora环境Q发布后官方发布了一些紧急修正包Q,未果
    • 重新下蝲最新发行版的eclipseQ未?/li>
    • 重新下蝲最新的试版本eclipseQ未?/li>
    • 下蝲fedora18的gtk2、glibc{强制安装,未果
    • 降gtk2、glibc{到fedora 16Q未?/li>
    • l箋googleQ寻找解x法,依然未果
    • 替换最新发布的二进制swt库,未果
    • 试手动~译swt源码Q未成功

    q样Q折腾了几天Q快要放弃了?/p>

    昨天是在搞不定,试下蝲Idea的社区版Q用了下还是感觉不?fn)惯Q放弃?/p>

    今天早上H然惛_Q公叔R的那台笔记本q是Fedora 16未升U。于是想强制降到swt所有依赖库到Fedora 16看能否解决问题?/p>

    使用了下面命令成功完成了部分依赖库的降Q这里面更是不断的尝试,在失败中成长。哭~~~

    yum list

    yum install

    yum erase

    yum --releasever=16 downgrade

    rpm -qa

    rpm -qf

    ldd

    lsof

    好在只是用了mirrors.sohu.com镜像Q绑定了内网地址Q下载rpm包非常快。这是是l我最大的安慰?/p>

    q个q程l过了长达两个小时的折腾和仿?jng)。最l终于成功完成了以下依赖的降U?/p>

    [adyliu@adyliu-pc jafka]$ rpm -qa|grep fc16|sort
    cscope-15.7a-9.fc16.x86_64
    dconf-0.10.0-1.fc16.x86_64
    fcitx-4.2.3-1.fc16.x86_64
    fcitx-data-4.2.3-1.fc16.noarch
    fcitx-gtk2-4.2.3-1.fc16.x86_64
    fcitx-gtk3-4.2.3-1.fc16.x86_64
    fcitx-libs-4.2.3-1.fc16.x86_64
    gdk-pixbuf2-2.24.1-1.fc16.x86_64
    gedit-3.2.6-1.fc16.x86_64
    glib2-2.30.3-1.fc16.x86_64
    glibc-2.14.90-24.fc16.7.x86_64
    glibc-common-2.14.90-24.fc16.7.x86_64
    glibc-devel-2.14.90-24.fc16.7.x86_64
    glibc-headers-2.14.90-24.fc16.7.x86_64
    glib-networking-2.30.1-2.fc16.x86_64
    gnome-disk-utility-libs-3.0.2-3.fc16.x86_64
    gnutls-2.12.14-2.fc16.x86_64
    gsettings-desktop-schemas-3.2.0-1.fc16.noarch
    gtk2-2.24.8-3.fc16.x86_64
    gtk2-immodule-xim-2.24.8-3.fc16.x86_64
    gvfs-1.10.1-3.fc16.x86_64
    libarchive-2.8.5-1.fc16.x86_64
    libbluray-0.2-0.5.20110710git51d7d60a96d06.fc16.x86_64
    libcdio-0.82-6.fc16.x86_64
    libsoup-2.36.1-2.fc16.x86_64
    mdadm-3.2.3-7.fc16.x86_64
    nautilus-3.2.1-2.fc16.x86_64
    nautilus-extensions-3.2.1-2.fc16.x86_64
    PackageKit-0.6.22-2.fc16.x86_64
    PackageKit-glib-0.6.22-2.fc16.x86_64
    PackageKit-gtk-module-0.6.22-2.fc16.x86_64
    PackageKit-yum-0.6.22-2.fc16.x86_64
    pango-1.29.4-1.fc16.x86_64
    yum-3.4.3-24.fc16.noarch

    可以看到仅仅更新gtk2/glibc是不够的?/p>

    ȝ下:(x)

    • 坚持是成功的关键Q中间过E,Ʋ哭无泪Q最后我都打重新安装Fedora 16了)(j)
    • 我还是很强的Q囧Q?br />

    最后警告:(x) 可能?x)有后遗症,请勿模仿Q请勿尝?/strong>?img src ="http://www.tkk7.com/xylz/aggbug/380210.html" width = "1" height = "1" />

    imxylz 2012-06-07 12:13 发表评论
    ]]>
    ~程语言大战http://www.tkk7.com/xylz/archive/2011/12/06/365658.htmlimxylzimxylzTue, 06 Dec 2011 03:25:00 GMThttp://www.tkk7.com/xylz/archive/2011/12/06/365658.htmlhttp://www.tkk7.com/xylz/comments/365658.htmlhttp://www.tkk7.com/xylz/archive/2011/12/06/365658.html#Feedback8http://www.tkk7.com/xylz/comments/commentRss/365658.htmlhttp://www.tkk7.com/xylz/services/trackbacks/365658.html


    非常令h吃惊的是C++语言依然不够坚挺Q由于Windows 7/Windows 8的发力,C#很快׃(x)抢占C++的市(jng)场,估计很快׃(x)C++从前三名中挤下去?



    iPhone/iPad的热销让Object Cl箋火热Q前十的位置q是可以持箋很久的,q一Ҏ(gu)庸置疑。移动设备开发的高端人才现在是高薪难求,如果有时间我也要l箋x下?nbsp; 阅读全文

    imxylz 2011-12-06 11:25 发表评论
    ]]>
    处理Zookeeper的sessionq期问题http://www.tkk7.com/xylz/archive/2011/12/05/365578.htmlimxylzimxylzMon, 05 Dec 2011 05:57:00 GMThttp://www.tkk7.com/xylz/archive/2011/12/05/365578.htmlhttp://www.tkk7.com/xylz/comments/365578.htmlhttp://www.tkk7.com/xylz/archive/2011/12/05/365578.html#Feedback7http://www.tkk7.com/xylz/comments/commentRss/365578.htmlhttp://www.tkk7.com/xylz/services/trackbacks/365578.htmlSession失效问题

    通常客户端主动关闭连接认为是一ơsession失效。另外也有可能因为其它未知原因,例如|络时D的session失效问题。在服务端看来,无法区分session失效是何U情况,一ơ一旦发生session失效Q一定时间后׃(x)session持有的所有watcher以及(qing)瞬时节点删除?
    而对于Zookeeper客户端而言Q一旦发生失效不知道是否该重q,q涉?qing)到watcher和瞬时节炚w题,因此Zookeeper客户端认为,一旦发生了seesion失效Q那么就认ؓ(f)客户端死掉了。从而所有操作都不能够进行。参?How should I handle SESSION  阅读全文

    imxylz 2011-12-05 13:57 发表评论
    ]]>
    Ganglia安装指南 (ZCentOS 5.6)http://www.tkk7.com/xylz/archive/2011/07/21/354744.htmlimxylzimxylzWed, 20 Jul 2011 16:34:00 GMThttp://www.tkk7.com/xylz/archive/2011/07/21/354744.htmlhttp://www.tkk7.com/xylz/comments/354744.htmlhttp://www.tkk7.com/xylz/archive/2011/07/21/354744.html#Feedback7http://www.tkk7.com/xylz/comments/commentRss/354744.htmlhttp://www.tkk7.com/xylz/services/trackbacks/354744.html

    Ganglia安装指南 (ZCentOS 5.6)

    安装依赖

    rpm -ivh http://mirrors.sohu.com/centos/5/os/x86_64/CentOS/zlib-devel-1.2.3-3.x86_64.rpm
    rpm -ivh http://mirrors.sohu.com/centos/5/os/x86_64/CentOS/freetype-devel-2.2.1-28.el5_5.1.x86_64.rpm
    rpm -ivh http://mirrors.sohu.com/centos/5/os/x86_64/CentOS/libart_lgpl-devel-2.3.17-4.x86_64.rpm
    rpm -ivh http://mirrors.sohu.com/centos/5/os/x86_64/CentOS/libpng-devel-1.2.10-7.1.el5_5.3.x86_64.rpm
    

    如果上述安装p|Q可能需要安装以下库依赖

    yum install zlib freetype libart_lgpl libpng
    

    安装rrdtools

    http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.2.27.tar.gz
    tar zxvf rrdtool-1.2.27.tar
    cd rrdtool-1.2.27
    ./configure --prefix=/usr/local/rrdtool
    make
    make install
    

    执行下命令,看是否安装成?/p>

    /usr/local/rrdtool/bin/rrdtool
    

    安装expat依赖

    http://downloads.sourceforge.net/project/expat/expat/2.0.1/expat-2.0.1.tar.gz?use_mirror=cdnetworks-kr-2
    tar zxvf expat-2.0.1.tar.gz
    ./configure --prefix=/usr/local/expat
    make
    make install
    

    对于64位操作系l,需要手动的拯下动态链接库到l(f)ib64?/p>

    mkdir /usr/local/expat/lib64
    cp -a /usr/local/expat/lib/* /usr/local/expat/lib64/
    

    安装apr以及(qing)apr-util

    http://labs.renren.com/apache-mirror/apr/apr-1.4.5.tar.gz
    tar xvjf apr-1.3.2.tar.bz2
    ./configure --prefix=/usr/local/apr
    make
    make install
    
    http://labs.renren.com/apache-mirror/apr/apr-util-1.3.12.tar.gz
    tar xvjf apr-util-1.3.2.tar.bz2
    ./configure --with-apr=/usr/local/apr --with-expat=/usr/local/expat
    make
    make install
    

    同样64位机器需要拷贝动态链接库

    /bin/cp -f /usr/local/apr/include/apr-1/* /usr/local/apr/include/
    mkdir -p /usr/local/apr/lib64
    /bin/cp -a -f /usr/local/apr/lib/* /usr/local/apr/lib64/
    

    安装confuse

    http://download.savannah.gnu.org/releases/confuse/confuse-2.7.tar.gz
    tar zxvf confuse-2.6.tar.gz
    ./configure CFLAGS=-fPIC --disable-nls --prefix=/usr/local/confuse
    make
    make install
    

    拯动态链接库

    mkdir -p /usr/local/confuse/lib64
    /bin/cp -a -f /usr/local/confuse/lib/* /usr/local/confuse/lib64/
    

    安装ganglia

    现在才是安装ganglia的开始,如果提示需要pcre的话Q安装下 yum install pcre 下蝲ganglia-3.2.0Q解压,安装

    ./configure --prefix=/usr/local/ganglia --with-librrd=/usr/local/rrdtool --with-libapr=/usr/local/apr --with-libexpat=/usr/local/expat \
    --with-libconfuse=/usr/local/confuse --with-gmetad --enable-gexec --enable-status --sysconfdir=/etc/ganglia
    make
    make install
    

    服务端配|?/h2>

    创徏rrdtool数据目录Q看$ganglia-3.2.0/web/conf.php里面的gmetad_root变量QƈҎ(gu)a(chn)pache的运行用户创建权限,例如apacheq行于apache用户??/p>

    mkdir -p /var/lib/ganglia/rrds
    mkdir -p /var/lib/ganglia/dwoo
    chown -R apache;apache /var/lib/ganglia
    

    配置一个数据源Q修?etc/ganglia/gmetad.conf文gQ同时将q行用户讄为rrdtool的目录权限用P例如apache用户

    data_source "suc" localhost
    setuid_username "apache"
    

    其中suc是数据源的名Uͼ客户端分l会(x)依赖此名Uͼ后面?x)提到?d自启动脚?/p>

    /bin/cp -f gmetad/gmetad.init /etc/init.d/gmetad
    /bin/cp -f /usr/local/ganglia/sbin/gmetad /usr/sbin/gmetad
    chkconfig -add gmetad
    

    启动gmetad服务

    service gmetad start
    

    看见Starting GANGLIA gmetad: [ OK ]׃表运行正怺?/p>

    客户端配|(gmond节点Q?/h2>

    本机安装如下Q?/p>

    /bin/cp -f gmond/gmond.init /etc/init.d/gmond
    /bin/cp -f /usr/local/ganglia/sbin/gmond/usr/sbin/gmond
    chkconfig -add gmond
    gmond --default_config > /etc/ganglia/gmond.conf
    

    对于生成的默认配|文仉要做适当的修?/p>

    cluster {
    name="suc"
    owner="apache"
    latlong="unspecified"
    url="unspecified"
    }
    

    其中name是将要在服务端进行的分组Q是服务端的数据源。接下来开启服?/p>

    service gmond start
    

    看见Starting GANGLIA gmetad: [ OK ]代表启动成功。如果有p|Q可以讲gmond.conf中的debug?改ؓ(f)100Q看更多的日志,然后q行排查?/p>

    globals {
    daemonize = yes
    setuid = yes
    user = nobody
    debug_level = 100
    }
    

    非本机客L(fng)配置需要安装服务端安装一栯行配|,q行Q非帔R?ch),q里使用本机安装好的文gq行安装?使用下面的脚本进行安装deploy-ganglia.sh

    i=$1
    scp /usr/sbin/gmond $i:/usr/sbin/gmond
    ssh $i mkdir -p /etc/ganglia/
    ssh $i mkdir -p /usr/local/ganglia/lib64
    ssh $i mkdir -p /usr/local/expat/lib
    scp /etc/ganglia/gmond.conf $i:/etc/ganglia/
    scp /etc/init.d/gmond $i:/etc/init.d/
    scp -r /usr/local/ganglia/lib64/* $i:/usr/local/ganglia/lib64/
    scp /usr/local/expat/lib/libexpat.so.1 $i:/usr/local/expat/lib/libexpat.so.1
    scp /usr/lib64/libapr-1.so.0 $i:/usr/lib64/
    

    实际上就是将本机安装?~译?的动态链接库拯到其它机器上Q用如下命令拷贝即?/p>

    sh deploy-ganglia.sh 10.1.11.2
    

    服务端的WEB配置

    PHPE序需要依赖Apache来运行,因此需要安装如下依?/p>

    yum install php-common php-cli php php-gd httpd
    

    安装webE序Q这里假定apache的root路径?var/www/html下面?/p>

    mkdir /var/www/html/ganglia
    cp -a -f ganglia-3.2.0/web/* /var/www/html/ganglia
    

    用SELinux setenforce 0 修改rrdtool的\径,文g/var/www/html/ganglia/conf.php中的RRDTOOL

    define("RRDTOOL", "/usr/local/rrdtool/bin/rrdtool");
    

    重启httpd服务器即可看到效?nbsp;service httpd restart

    更多参?http://www.imxylz.info/wiki/Ganglia/Ganglia


    imxylz 2011-07-21 00:34 发表评论
    ]]>
    Crack JRebel 4.0Q无需重启JVMQ热部v解决Ҏ(gu)http://www.tkk7.com/xylz/archive/2011/06/12/352109.htmlimxylzimxylzSat, 11 Jun 2011 16:24:00 GMThttp://www.tkk7.com/xylz/archive/2011/06/12/352109.htmlhttp://www.tkk7.com/xylz/comments/352109.htmlhttp://www.tkk7.com/xylz/archive/2011/06/12/352109.html#Feedback36http://www.tkk7.com/xylz/comments/commentRss/352109.htmlhttp://www.tkk7.com/xylz/services/trackbacks/352109.htmlhttp://dl.dropbox.com/u/22951342/jrebel.jar  www.zeroturnaround.com最q又接触C点WEB应用Q想到Resin服务器重启需要花Ҏ(gu)较多的时_(d)SpringWEB服务搞得来复杂,来臃肿了Q,所以又惛_?8q那时候用JavaRebel了。一D|间不用h家居然改名ؓ(f)JavaRebel了?br />如果不熟(zhn)的可以搜烦(ch)下JRebel/JavaRebelQ这里是官方|站Q?div style="display: inline-block; ">
    www.zeroturnaround.com?br />最q刚发布?.0版本Q功能更强大Q配|也更加单了。h(hun)g菌Ӏ?br />官方提供30天试用版Q可以先体验下再军_是否购买?br />
    看到里面的代码؜淆让我很崩溃Q没有深入研I؜淆后的运行机制。比如下面居然有两个名称相同Q参数相同,但是q回g同的静态方法,不知是如何执行的?br />public static void a(String s)?public static String a(String)Q以?br />private static void c()和private static String c()?br />猜测是在q行的时候自p行JVM指o(h)的执行。这L(fng)代码反编译后都不知道怎么写回去,惛_崩溃Q因Z个方法居焉有地方调用了?br />


    zhangthe9 提供了一?.0的破解版Q我很好奇,咨询了下Q居然还是以前的RSA{֐法?/div>
    好吧Q翻?8q写的JavaRebel 2.0-M1的破解程序,重新生成一个license文gQ修改公钥,替换license文gQ居然运行正常。这么多q了Q签名算法和步骤居然一炚w没变Q嗯Qh家真执着Q?br />当然是无限制版,所有功能可用,也没有时间限制?br />

    #############################################################

     JRebel 
    4.0 (201105311152)
       with Enterprise Add
    -On! (see http://jrebel.com/enterprise)
     (c) Copyright ZeroTurnaround OU, Estonia, Tartu.

     Over the last 
    1 days JRebel prevented 
     at least 
    0 redeploys/restarts saving you about 0 hours.

     This product is licensed to www.imxylz.info
     
    for unlimited number of developer seats on site.
     
    == Cracked by imxylz (imxylz#gmail.com) from JavaRebel 2.0-M1, 2008 ==

    #############################################################

    伟大领袖毛主席,指引我们向前q!
    jrebel cracked by imxylz
    伟大领袖毛主席,指引我们向前q!
    jrebel cracked by imxylz
    JRebel: Reloading class 'ReloadClass'.change 
    伟大领袖毛主席,指引我们向前q!
    class!

    破解思\很简单,替换公钥Q用自q钥生成签名License文g?br />如果惛_蔽版本更新提C,有以下几U思\Q?br />Q?Q修改调用更新坚持的c(N有点大,因ؓ(f)h比较严重Q不Ҏ(gu)反编译)(j)
    Q?Q修Ҏ(gu)新服务器的地址Q将http://update.zeroturnaround.com/jrebel/地址修改Q可以用二q制工具直接修改字符Ԍ比如我就update改ؓ(f)updattQ无法解析域名就不能获取最新版本了?br />Q?Q增?Drebel.disable_update=true参数卛_。(q种Ҏ(gu)最单)(j)?br />
    当然了,Z“保护知识产权”Q不?x)将破解文g攑և来,有需求的可以留言联系。(所谓的“计算机条?#8221;是允ؓ(f)了学?fn)、研I而进行相关逆向工程的,哈哈Q?/strike>

    好吧Q架不住国h的热情,q里是下载地址Q需要翻XQ你懂得Q?div style="display: inline-block; ">
    http://dl.dropbox.com/u/22951342/jrebel.jar  

    [关键字:(x) JRebel, JavaRebel, JRebel Crack, JRebel License, JavaRebel License]


    imxylz 2011-06-12 00:24 发表评论
    ]]>SubversionQSVNQ自动展开关键字的Ҏ(gu)http://www.tkk7.com/xylz/archive/2011/04/12/348139.htmlimxylzimxylzTue, 12 Apr 2011 06:02:00 GMThttp://www.tkk7.com/xylz/archive/2011/04/12/348139.htmlhttp://www.tkk7.com/xylz/comments/348139.htmlhttp://www.tkk7.com/xylz/archive/2011/04/12/348139.html#Feedback0http://www.tkk7.com/xylz/comments/commentRss/348139.htmlhttp://www.tkk7.com/xylz/services/trackbacks/348139.htmlSubversionQSVNQ自动展开关键字的Ҏ(gu)

    通用讄

    在subversion的config文g中添?修改如下一D:(x)

    [miscellany]
    enable-auto-props = yes
    [auto-props]
    * = svn:keywords=LastChangedDate LastChangedRevision LastChangedBy Id Author Date Revision HeadURL;svn:eol-style=native

    路径

     Windows: %APPDATA%\Subversion\config  %ALLUSERSPROFILE%\Application Data\Subversion\config
    Unix/Linux: ~/var/lib/subversion/conf/    ~/.subversion/config    /etc/subversion/config

    支持软g

    This is also the place to look for the config file if you are using Windows, Eclipse and the Subclipse Plugin and using the JavaHL binding (probably also for the JavaSVN binding, but I did not test that).

    补充说明

    如果已经存在的文Ӟ如果之前没有开启关键字替换Q,那么再次更新也不?x)替换。也是说仅仅对新添加的文gQ开启此Ҏ(gu)之后)(j)的文件才有效。对于已l存在的文gQ需要用下面命令来生效。当然也可以使用subclipse的图形界面来操作?/p>

    svn propset svn:keywords "Id" <file>
    

    原文说明

    ### Set enable-auto-props to 'yes' to enable automatic properties
    ### for 'svn add' and 'svn import', it defaults to 'no'.
    ### Automatic properties are defined in the section 'auto-props'.
    enable-auto-props = yes
    

    参考地址




    imxylz 2011-04-12 14:02 发表评论
    ]]>
    Java常见疑惑和陷阱(PPTQ?/title><link>http://www.tkk7.com/xylz/archive/2010/12/03/339722.html</link><dc:creator>imxylz</dc:creator><author>imxylz</author><pubDate>Fri, 03 Dec 2010 08:13:00 GMT</pubDate><guid>http://www.tkk7.com/xylz/archive/2010/12/03/339722.html</guid><wfw:comment>http://www.tkk7.com/xylz/comments/339722.html</wfw:comment><comments>http://www.tkk7.com/xylz/archive/2010/12/03/339722.html#Feedback</comments><slash:comments>7</slash:comments><wfw:commentRss>http://www.tkk7.com/xylz/comments/commentRss/339722.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/xylz/services/trackbacks/339722.html</trackback:ping><description><![CDATA[本来是打小范围内讨论的Q话题也比较?yu),后来听说人多了,临时拼凑些材料。话题过大后重点放在讲解上Q其实这里面讲解的东东还是挺多的。以后有旉?x)将q发完整整理一ơ?br /> <br /> <br /> <br /> <div style="width: 425px;" id="__ss_6013919"><strong style="display: block; margin: 12px 0pt 4px;"><a title="Java常见疑惑和陷?>Java常见疑惑和陷?/a></strong><object id="__sse6013919" width="425" height="355"> <param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=java-101203020649-phpapp02&stripped_title=java-6013919&userName=xylz" /> <param name="allowFullScreen" value="true"/> <param name="allowScriptAccess" value="always"/><embed name="__sse6013919" src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=java-101203020649-phpapp02&stripped_title=java-6013919&userName=xylz" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"></embed></object> <div style="padding: 5px 0pt 12px;">View more <a >presentations</a> from <a >xylz</a>.</div> </div><img src ="http://www.tkk7.com/xylz/aggbug/339722.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/xylz/" target="_blank">imxylz</a> 2010-12-03 16:13 <a href="http://www.tkk7.com/xylz/archive/2010/12/03/339722.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>关于Java面试个h不得不说的一些事http://www.tkk7.com/xylz/archive/2010/11/24/338917.htmlimxylzimxylzWed, 24 Nov 2010 06:34:00 GMThttp://www.tkk7.com/xylz/archive/2010/11/24/338917.htmlhttp://www.tkk7.com/xylz/comments/338917.htmlhttp://www.tkk7.com/xylz/archive/2010/11/24/338917.html#Feedback16http://www.tkk7.com/xylz/comments/commentRss/338917.htmlhttp://www.tkk7.com/xylz/services/trackbacks/338917.html招聘的需?/a>Q陆陆箋l收C大约20来封历。由于最q一个多月在杭州出差Q所以没有电(sh)话面试,基本上都是觉得简历上写的差不多的都推荐面试了。回来后我也面试了几个,说说我的感受?
    我一直觉得我个h不是一个特别挑剔的人,但是也希望能够找C些技术非常牛的h。很多有l验Q工作几q_(d)(j)的同学会(x)说自己非怸错,希望l一个机?x)。其实我Ҏ(gu)有h一视同仁,基本上要求都很低?/div>
    l验多的希望有一些深度或者广度的U篏。比如说某些领域非常专注/专业Q或者说在整体上有非常全面的认识和了解。工作时间长了就需要有一定的U篏Q不然怎么能够H出自己的特点呢Q做互联|的需要对性能、ƈ发、分布式{专业领域有一些了解或者研IӞ哪怕有一些心得也不错。做企业开发的需要对行业、稳定性、工兗理论等有些独有的理解,哪怕很初、幼E也行。具体点怎么_(d)比如你每天都是用struts/spring/hibernate/ibatis{等Q那么对q些原理是否了解Q背后的思想是否了解Q业界的认识和评、比较是否了解?而不是仅仅知道怎么调用APIQ这q远不够。如果能够研I下源码Q写一个类似的pȝ更好了。说白了是能够透过工具/技术本w发C些规律或者说认识Q剩下来的就是积累,也就是我们通常说的l验。还有一个方面就是对行业势的了解。技术不能够仅仅x于技术本w,q需要对业W的动态、趋势有些关注,q样才能不至于技术不断的更新而落后。这q不是说L去追求新技术、新软g、新工具{,而是x行业本n的发展。另外还有一个很重要的经验积累,那就是解决问题的能力。很多同学同时觉得自己做了很多事情,但是让他说一两点比较H出的事情,p不出来了QL归结于事情本w比较简单,没有更多的发现和挖掘。其实有时候面试的人只需要了解当初解决问题的q程pQ从中发C人在里面做了什么、怎么做、收获了什么。这是l验的积累。企业归根结底是需要员工作做A(ch)献的Q因此需要有l验的h来帮助解决问题,那么曄解决问题的能力和思\很重要了?/div>
    对于没有多少l验的同学,比如刚毕业或者实?fn)生{,那么需要基很好Q然后有一些个人的认识。这些经验少的同学一般面试者都不会(x)为难他们Q只需要把知道的、认识到的告诉面试者就行了Q从而让面试者能够看到发展的潜力。很多hq是喜欢培养那些有发展潜力的同学Q这些同学的q步都是非常q速的?/div>
    我个人ȝ其实只有一点,那就是要?#8220;亮点”。说白了是有自q特的认识和理解等才能在众多差不多的同学中脱颖而出。既然不能做全才Q那么就?#8220;专才”?/div>
    q里仍然做一个广告,只要认ؓ(f)自己可以Q仍然可以发历给我,人才是永q的需求?span style="color: #333333; font-family: arial; font-size: 12px; ">淘宝(北京)招聘高JAVA开发工E师



    imxylz 2010-11-24 14:34 发表评论
    ]]>Mysql replace into ?insert into on duplicate key update 的区?/title><link>http://www.tkk7.com/xylz/archive/2010/06/23/324242.html</link><dc:creator>imxylz</dc:creator><author>imxylz</author><pubDate>Wed, 23 Jun 2010 02:46:00 GMT</pubDate><guid>http://www.tkk7.com/xylz/archive/2010/06/23/324242.html</guid><wfw:comment>http://www.tkk7.com/xylz/comments/324242.html</wfw:comment><comments>http://www.tkk7.com/xylz/archive/2010/06/23/324242.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/xylz/comments/commentRss/324242.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/xylz/services/trackbacks/324242.html</trackback:ping><description><![CDATA[q两U方式的作用是如果数据库中存在记录就更新Q否则就插入新记录,但是在用上也是有一点区别的Q?a target="_blank"><strong>原文在此</strong></a>?br /> <br /> <span style="widows: 2; text-transform: none; text-indent: 0px; border-collapse: separate; font: medium Simsun; white-space: normal; orphans: 2; letter-spacing: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="Apple-style-span"><span style="line-height: 19px; font-family: Arial, Helvetica, sans-serif; font-size: 15px" class="Apple-style-span"> <p style="margin-top: 1.33em; margin-bottom: 0px" class="vspace"><strong>ȝ如下Q?/strong></p> <ol style="margin-top: 0px; margin-bottom: 0px"> <li>如果表中不存在主键记录,replace和insert*update都与insert是一L(fng)特点?/li> <li>如果表中存在主键记录Qreplace相当于执行delete ?insert两条操作Q而insert*update的相当于执行if exist do update else do insert操作。因此,如果replace填充的字D不全,则会(x)D未被更新的字D都?x)修改?f)默认|q且如果有自增id的话Q自增id?x)变化?f)最新的|q样如果是以自增id为标志的话可能导致记录丢失)(j)Q而insert*update只是更新部分字段Q对于未被更新的字段不会(x)变化Q不?x)强制修改?f)默认|(j)?/li> </ol> </span></span><img src ="http://www.tkk7.com/xylz/aggbug/324242.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/xylz/" target="_blank">imxylz</a> 2010-06-23 10:46 <a href="http://www.tkk7.com/xylz/archive/2010/06/23/324242.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Java到底占用多大内存Q?/title><link>http://www.tkk7.com/xylz/archive/2009/12/23/307069.html</link><dc:creator>imxylz</dc:creator><author>imxylz</author><pubDate>Wed, 23 Dec 2009 11:51:00 GMT</pubDate><guid>http://www.tkk7.com/xylz/archive/2009/12/23/307069.html</guid><wfw:comment>http://www.tkk7.com/xylz/comments/307069.html</wfw:comment><comments>http://www.tkk7.com/xylz/archive/2009/12/23/307069.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.tkk7.com/xylz/comments/commentRss/307069.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/xylz/services/trackbacks/307069.html</trackback:ping><description><![CDATA[     摘要: 在我?4位的CenterOS上,指定了JVM的最大堆内存?500MQ但是在top和进Estatus中可以看到实际占用内存已l远q大?500MQ那么JVM到底占用多大内存Q如果做到控制JVM的占用内存大?  <a href='http://www.tkk7.com/xylz/archive/2009/12/23/307069.html'>阅读全文</a><img src ="http://www.tkk7.com/xylz/aggbug/307069.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/xylz/" target="_blank">imxylz</a> 2009-12-23 19:51 <a href="http://www.tkk7.com/xylz/archive/2009/12/23/307069.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>单例模式完全解析http://www.tkk7.com/xylz/archive/2009/12/18/306622.htmlimxylzimxylzFri, 18 Dec 2009 15:15:00 GMThttp://www.tkk7.com/xylz/archive/2009/12/18/306622.htmlhttp://www.tkk7.com/xylz/comments/306622.htmlhttp://www.tkk7.com/xylz/archive/2009/12/18/306622.html#Feedback4http://www.tkk7.com/xylz/comments/commentRss/306622.htmlhttp://www.tkk7.com/xylz/services/trackbacks/306622.html单例模式应该是设计模式中比较单的一个,但是在多U程q发的环境下使用却是不那么简单了?
    本文探讨在多线E下静态域单例模式、双重检查锁机制、类延时加蝲、同步锁{机制的相关技术问题?nbsp; 阅读全文

    imxylz 2009-12-18 23:15 发表评论
    ]]>
    HashMap的读写ƈ?/title><link>http://www.tkk7.com/xylz/archive/2009/12/18/306602.html</link><dc:creator>imxylz</dc:creator><author>imxylz</author><pubDate>Fri, 18 Dec 2009 10:20:00 GMT</pubDate><guid>http://www.tkk7.com/xylz/archive/2009/12/18/306602.html</guid><wfw:comment>http://www.tkk7.com/xylz/comments/306602.html</wfw:comment><comments>http://www.tkk7.com/xylz/archive/2009/12/18/306602.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.tkk7.com/xylz/comments/commentRss/306602.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/xylz/services/trackbacks/306602.html</trackback:ping><description><![CDATA[     摘要: 大家都知道HashMap不是U程安全的,但是大家的理解可能都不是十分准确。很昄d同一个key?x)导致不一致大安能理解,但是如果d一个L存在HashMap中且不变的对象会(x)有问题么Q我们来试试看?nbsp; <a href='http://www.tkk7.com/xylz/archive/2009/12/18/306602.html'>阅读全文</a><img src ="http://www.tkk7.com/xylz/aggbug/306602.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/xylz/" target="_blank">imxylz</a> 2009-12-18 18:20 <a href="http://www.tkk7.com/xylz/archive/2009/12/18/306602.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>邪恶的网l?/title><link>http://www.tkk7.com/xylz/archive/2009/11/14/302375.html</link><dc:creator>imxylz</dc:creator><author>imxylz</author><pubDate>Sat, 14 Nov 2009 14:25:00 GMT</pubDate><guid>http://www.tkk7.com/xylz/archive/2009/11/14/302375.html</guid><wfw:comment>http://www.tkk7.com/xylz/comments/302375.html</wfw:comment><comments>http://www.tkk7.com/xylz/archive/2009/11/14/302375.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/xylz/comments/commentRss/302375.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/xylz/services/trackbacks/302375.html</trackback:ping><description><![CDATA[|络是邪恶的么?每次使用google搜烦(ch)Q没有注意某些搜索出来的|站地址而点MQ结果很不幸Q整个google服务的连通都挂了。我一直没有明白ؓ(f)什么,因ؓ(f)q种情况出现的可能性大概是1/10Q而且1分钟后就立刻恢复了,所以大部分的时候也没有在意Q今 天也搜烦(ch)了一些关于在windows 7下用openvpn的问题,因ؓ(f)我一直没有解军_Windows 7下用OpenVPNq接公司|络的问题。很不幸点了一个blogspot的地址Q结果google服务立刻断开了。然后等?分钟Qgoogle? 务恢复后再点?yn)L地址Qgoogle服务仍然不可用,昄google服务的断开与此地址有关Q因为点d它的地址却没有问题。好了基本知道ؓ(f)什么服务被 断开了,很显然后面的GQE<?<G)W屏蔽了地址Z把我的网l服务也l断开了。至目前我认ؓ(f)只有q种可能性。首先互联网是无状态,也就 是互联网是独立的Q与Ml织和个人应该都无关Q因此也无所谓正义与邪恶之分了。其ơ互联网只是工具Q不同的人的不同使用Ҏ(gu)?x)导致千奇百怪的l果Q但 是不能因此认为此工具是邪恶的。核能的发明不代表就是错误的。最后不能因Z联网上某些不“三水?#8221;谐的东西把所有用L(fng)讉K都可闭Q这U以偏概 全,一板砖拍死的行为是不可取的。最q再看《明朝那些事ѝ第三遍Q显然美好、正义的东西是不能被扑灭的,历史是不能掩盖的。更多的话就不能再说了,不然 我的q个站很快׃(x)?#8220;三水?#8221;谐掉的,而我本h可能有某些不想看到的事情发生了Q所以就此打住?img src ="http://www.tkk7.com/xylz/aggbug/302375.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/xylz/" target="_blank">imxylz</a> 2009-11-14 22:25 <a href="http://www.tkk7.com/xylz/archive/2009/11/14/302375.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <p>лǵվܻԴȤ</p> <a href="http://www.tkk7.com/" title="亚洲av成人片在线观看">亚洲av成人片在线观看</a> <div class="friend-links"> </div> </div> </footer> վ֩ģ壺 <a href="http://datian-cn.com" target="_blank">߹ۿƵa</a>| <a href="http://mangshigas.com" target="_blank">ƷۺϾþ</a>| <a href="http://chch12.com" target="_blank">ƬվɫƬѹۿcn</a>| <a href="http://fkg675.com" target="_blank">ҹѸ</a>| <a href="http://tskes.com" target="_blank">լa</a>| <a href="http://www-095666.com" target="_blank">þúݺѹۿ2020</a>| <a href="http://xzdlgp.com" target="_blank">Ļ</a>| <a href="http://dqzlxgg.com" target="_blank">ѽƵ</a>| <a href="http://3y0r.com" target="_blank">רһvavר</a>| <a href="http://www77714.com" target="_blank">޾Ʒҹ</a>| <a href="http://www454yu.com" target="_blank">Ƶ߹ۿ</a>| <a href="http://bdyls.com" target="_blank">޹˾Ʒþ</a>| <a href="http://0102008.com" target="_blank">Ƶۿ</a>| <a href="http://zhidianzh.com" target="_blank">޸Ӱ߹ۿ</a>| <a href="http://jjwgzx.com" target="_blank">1000žžδʮ</a>| <a href="http://ettedia.com" target="_blank">AVһ</a>| <a href="http://4794d.com" target="_blank">ҰƵ߹ۿ</a>| <a href="http://gbn21.com" target="_blank">ɫóվ߹ۿ</a>| <a href="http://xiaoduanfa.com" target="_blank">޾޴hdѿ</a>| <a href="http://cytanhuang.com" target="_blank">޵һվ߹ۿ</a>| <a href="http://www-13696.com" target="_blank">ӾƷ</a>| <a href="http://conghui8.com" target="_blank">Ʒۺ</a>| <a href="http://www-13696.com" target="_blank">޷A߷</a>| <a href="http://njjngs.com" target="_blank">˻ҳվѹۿȫ</a>| <a href="http://www003924.com" target="_blank">AVպۺһ</a>| <a href="http://guakao88.com" target="_blank">ëƬۿ</a>| <a href="http://5222133.com" target="_blank">޾Ʒרþ</a>| <a href="http://www6661126.com" target="_blank">Ѹ߰Ƶ</a>| <a href="http://yanyingqiang.com" target="_blank">޾Ʒ9999þþþ</a>| <a href="http://7766ks.com" target="_blank">һҴ </a>| <a href="http://whspmd.com" target="_blank">99þ99þþƷѿ</a>| <a href="http://3atv66.com" target="_blank">91vavava</a>| <a href="http://www998xe.com" target="_blank">պѲ</a>| <a href="http://78555yy.com" target="_blank">ŮƵվ</a>| <a href="http://952268.com" target="_blank">ëƬa߹ۿ67194</a>| <a href="http://cswsfz.com" target="_blank">++ۺ+ר</a>| <a href="http://cctv69.com" target="_blank">Ƶһ</a>| <a href="http://cswangli.com" target="_blank">AV˾Ʒպһ</a>| <a href="http://8b22.com" target="_blank">?VƷ</a>| <a href="http://szhszszy.com" target="_blank">һҹƵ</a>| <a href="http://9844555.com" target="_blank">þù޾Ʒ鶹</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>