Faster completion of projects

Distributed platform originally planned to use asynchronous methods to complete the programming and implementation of lightweight threads later modified to be compatible protocol, and later found that the logic of existing projects synchronous code be changed to asynchronous callback methods changed things too much, so put lightweight threads in recent weeks ahead of implementation. Test results is still the ideal, ucontext switching efficiency at more than 2 million / second, erlang at my test machines on the same non-smp version 7200000 / second, smp version of fewer than 200 ten thousand / second, switch performance indeed have gaps, but at the moment appears to be sufficient. Also did not go to Lock-free implementation of the SMP version of the current thread pool are used to run multi-threaded logic, necessary part of running multi-threaded need only take the initiative to cut the current lightweight thread to the thread pool, run End It part of a further cut back on it. IO part and put AiO system combining event, so although the proceedings are in the single-threaded implementation, the document is not read and write some obstruction.

Erlang will use a lot of resistance, although a lot of publicity over the past once the project team is basically all know this thing, but use it to do the project, especially the transformation of existing projects, the workload or Long . Using C + + implementation of the distributed platform compatible with the existing code is better for lightweight threads unfriendly logic (occupied by the stack is too large, there is obstruction, etc.), can be easy to add a thread pool to switch, and the practice of Eurasia similar.

At present, completed the actor model (lightweight threads, send / receive and overtime semantics, the process of Registration, etc.), socket module, distributed model (and the node is similar to Erlang), aio integration, Future (see IoLanguage, fun East East), because of the use of C + + development, do not put up with Erlang grammar of FP, you can also use C + + syntax features. Originally thought that the platform after the existing code changes done more, at present it seems only a small number of modifications to the code the way to prepare than the asynchronous callback easier.

分类:Development 时间:2009-03-13 人气:390
blog comments powered by Disqus


  • BitNami Node.js Stack 2012-05-31

    BitNami Node.js Stack 是 BitNami 推出的 Node.js 的集成套装软件,帮你轻松搭建 Node.js 运行环境. BitNami Node.js Stack 包含 Node.js 和使用 NPM 作为模块管理和 node-waf 用于构建原生扩展,同时包含了对 Redis 服务器的支持环境,以及如下模块: Coffee Script: A friendly language that compiles into JavaScript. Jade: A high p

  • Linux protocol stack of TCP transport protocol (1) 2010-07-20

    Connection-oriented TCP protocol (Transmission Control Protocol) is a connection-oriented streaming protocol, which through three mechanisms to ensure the reliability of transmission: Serial number, response mechanisms and retransmission timeout. tcp

  • Template linear form, list, queue, stack implementation (C + + implementation) 2011-05-18

    As many time to use the stack, queue, stack, then put them as a template. List with the lists and linear form in two ways. Stacks and queues at the same time is also a chain in order to achieve and implement.

  • Linux protocol stack of TCP transport protocol (2) 2010-07-20

    TCP connections initiated the process: Client server (State: closed) (State: listen) ---------------->( SYN connection request) (State: SYN_SENT) ACK <------------- (State: SYN_RECV) -----------------> ACK (State: ESTABLISHED) (State: ESTABLISHED

  • Thread Summary (change) 2009-10-12

    That thread seems to be a very troublesome piece is a complex issue, in fact, true, related to thread programming is very particular about the technique. This requires us to change ways of thinking, to understand the mechanism of the more common thre

  • Android IPC communication mechanism for source code analysis 2010-06-10

    Android IPC communication mechanism for source code analysis Binder Communications Description: Linux system, inter-process communication methods are: socket, named pipe, message queque, signal, share memory. Java System inter-process communication w

  • Cometd & Jetty Continuations 2010-09-26

    Cometd & Jetty Continuations Contents 1. Cometd 1.Cometd Server Bayeux Client Channel ContinuationCometdServlet 2.Cometd Client 2. Jetty NIO & Continuation 1.Jetty Server With NIO 2.Jetty Continuation Background: With the continuous development of

  • ESB Tour (outer one - Using SEDA to Ensure Service Availability) 2008-12-11

    With regard to compliance with the standards of the mule only SEDA, EIP, MEPs, for JBI and SCA are part of the reference, translation of a infoQ the SEDA article: Using SEDA to Ensure Service Availability using the SEDA to ensure service availability

  • LINUX c + + thread pool framework 2010-07-15

    This paper presents a general framework thread pool, the framework will with the thread of tasks related to a high level of abstraction, to accord with the specific mission Wu Guan. In addition to the thread pool is dynamic scalability, according to

  • tomcat is running and the problem of optimal solutions 2010-07-15

    1, the environment shows Tomcat running under Linux on 2, increase the jvm memory allocation # Vi Insert the following: JAVA_OPTS = '-Xms256m-Xmx512m' 3, INFO: Maximum number of threads (200) created for connector with address null and po

iOS 开发

Android 开发

Python 开发



PHP 开发

Ruby 开发






Javascript 开发

.NET 开发



Copyright (C), All Rights Reserved. 版权所有 黔ICP备15002463号-1

processed in 0.329 (s). 12 q(s)