Sogou Distributed registration center Overview

Please indicate the source: jiq -'s chin Technical Blog copyright author by Ji Yiqin A, motivation At present, we have entered into the era of distributed applications, the back-end has begun to fully service, based on the separation of responsibilities into multiple subsystems, and to support the low cost of server cluster.     But under such a structure:   1, reduce the allocation of disaster: Service, web site, FTP server, database, public components and other resources of the configuration information, as well as some of the global system configuration parameters...
read(984) comment(4)

Sogou Client agent architecture

Here is my design of a client agent architecture diagram, mainly to complete the following functions: 1, asynchronous message notification; 2, time-consuming task processing; In this architecture, including the registration center, the dynamic registration and discovery of services, as well as the management of configuration information. ...
read(923) comment(0)

Sogou 10 years senior executive search revealed: why they can pay millions of annual salary

360 President Zhou microblogging recommended language: network has an article is very popular, "for 10 years, a senior executive search: why do they million annual salary?" the author is unknown, but I think is the cow. Judge a person with salary value, common point, but it is a standard of the world. High value, vision and ability will have an expert. As the saying goes, cone in the bag. But the awl is grinding out. Qingming small holiday, it is recommended to take time to see a look, think, a turn.   10 years senior executive search revealed: why they can pay millions of annual salary! ?   From the network.   1, to solve the problem...
read(649) comment(0)

Java basis: SocketChannel and Selector application in ZooKeeper

Reprint please indicate the source: jiq - Chin's technical blog if you do not understand the socketchannel and selector, please read my other blog: zookeeper start from the main functions of QuorumPeerMain: calling sequence is: Main - > initializeAndRu...
read(442) comment(0)

Long connection on HTTP1.1

HTTP is an application layer protocol built on the transport layer of the TCP protocol, the protocol in this layer, it is a kind of network interaction needs to comply with a protocol specification. Http1.0 short HTTP connections 1.0 specified browser and the server only to maintain transient connectivity, browser each request need establish a TCP connection to the server, server to complete the request processing immediately after breaking open TCP connections, server does not track each customer nor recorded past requests. This process can be described as: 1, to establish a connection: the first DNS parsing process. If the domain name into a IP, such as...
read(443) comment(0)

Discussion on the advantages and disadvantages of Thrift learning (2) Thrift

In fact, there are still some problems in my confusion. For example: 1 Thrift is the main point is not cross language? 2 Facebook has a lot of cross language calls the scene it? Why do you want to develop Thrift this stuff? 3 download the major Internet Co at home and abroad for the size of the Thrift application? Are generally used in what scenario? 4 Thrift advantages and disadvantages? So dedicated to open this blog, with the better on the Thrift's views and ideas are recorded here!!! =====================...
read(430) comment(0)

Thrift (1) C# calls Java development steps

1 download thrift download address: compile thrift intermediate file to generate the corresponding language code tool thrift-0.9.3.tar.gz library containing the thrift various language source code for the, and some test program code, 2 compiler generated net library (DLL) and Java libraries (jar) decompression thrift-0.9.3.tar.gz file...
read(511) comment(0)

On the question of whether TCP is applicable to the wide area network environment

1. Introduction suddenly thought of long ago to department a colleague said, the HTTP protocol applicable in wide area network, and TCP protocol does not apply in wide area network, because the HTTP protocol is a short connection, TCP protocol is long connection, the overhead is relatively large. In fact, a careful analysis of knew this kind of talk is not established. Http protocol itself is based on the TCP protocol, launched a Http request before the client needs to establish a TCP connection with the server through the three handshake. The following section content from the network, finally summarizes the conclusion. 2 long connection and short connection two, long and short connection connection...
read(1306) comment(0)

On the Department back to the Java before the end of the initial tentative plan

What form of Java service? Currently are mainly the following categories: 1, operation in the framework of similar web application server Servlet2, thrift, Pb, Avro and write java service 3, WebService (jax-ws, jax-rs) now our server to comprehensive to Java. If the terminal system is all written with Servlet, will not be able to achieve cross language, we are now the majority of the client or.NET platform. If you use Thrift and other frameworks, and now meet the Java call.NET service...
read(689) comment(0)

2003-32bit RabbitMQ on the Windows does not regularly crash

Reprint please indicate the source: jiq - Chin's technical blog - Ji Yiqin phenomenon: Recently a system used the rabbitmq center, the system must for the replacement of the old system, so there is must be running on Windows 2003 32-bit machine restrictions. Because of the need to get the reasons, it can be said that the integration test phase to know this limit, when the system ran up, found a fatal problem: Broker RabbitMQ (NT service) is not a regular crash. Open windows...
read(647) comment(1)

The most popular Java application server

We released the 2013 Java application server market survey last year. In order to verify whether the report was sent to the change, we collected 783 different configuration points from February to May. Data through the start of the class path collection, query, which is similar to the "grep - I Tomcat classpath.log". We found that the results with little difference in last year's, as shown below: Tomcat still to 41% proportion topped the list, but compared to 43% in 2013 decreased slightly. Jetty accounted for 31...
read(272) comment(1)

Java Web application garbled solution (Tomcat server)

Reprint please indicate the source: jiq - Chin's technical blog one, introduction, I study the problem of web code is not too deep, just in Java Web development process of themselves and others have encountered several code, through the Internet to find the following five steps to do 100% can be solved: solving method: 1, for the same application, the best uniform code, recommended to UTF-8, of course, can be GBK; 2, set to the correct JSP pageEncoding= "UTF-8"; 3, in all of the JSP.
read(251) comment(0)

Java basis: synchronous non blocking IO (NIO)

Reprint please indicate the source: jiq - Chin's technical blog introduction of JDK 1.4 introduce NiO, namely new io. The purpose is to improve the speed of Io. Special attention javanio incomplete is non blocking IO (No-Blocking IO), because the part of the channel (such as filechannel) can only run in blocking mode, and other channel can choose between the blocking and non blocking. In spite of this, we are accustomed to NIO Java as a non blocking IO, and in front of the introduction of the flow...
read(548) comment(0)

Java basis: synchronous blocking IO (BIO)

Reprint please indicate the source: jiq - Chin's technical blog remarks reading this article before, it is recommended to see me this article Bowen understanding of blocking the basic concept of type IO and non blocking io. A, stream (stream) 1 byte stream input (InputStream) medium flow FileInputStream from the document read information pipedinputstream generates write pipedoutputstream data, to achieve "piping" concept...
read(502) comment(0)

Java basis: blocking / non blocking IO, synchronous / asynchronous IO

Reprint please indicate the source: main content of jiq - Chin's technical blog in this paper, transfer from this article, and on the basis of understanding summary. Introduction synchronous (synchronous) IO and asynchronous (asynchronous) IO, blocking (blocking) IO and non blocking (non-blocking) IO are what, in the end what is the difference? This problem is actually different people are given the answer may be different, such as asynchronous, it is considered IO Wiki and non-blo...
Read(241) comment(0)

Java basis: HashMap and HashSet parsing

Reprint please indicate the source: jiq - Chin's technical blog HashMapHashMap, based on hash (hash table) storage objects refer to "key" data structure. Deposited the key must have two key functions: (1) equals (): judge two key is the same, to guarantee the uniqueness of the stored key; (2) the hashcode (): according to the key kV object to calculate the references stored in the hash table position; the bottom of the HashMap structure is an array: tra...
Read(951) comment(0)

Java Foundation: container

Please indicate the source: jiq -'s chin Technical Blog One, Collection: storage of independent elements Collection interface is optional, in fact, the class does not necessarily implement all of its interface, which is to prevent the interface explosion". The most common Operation Unsupported Are derived from the back of the fixed size of the data structure of the support of the container, such as the use of ArrayList.asList will be converted into an array of L...
Read(1282) comment(6)

Java basis: array

Please indicate the source: jiq -'s chin Technical Blog Array initialization In any case, when you want to be an array object, you must specify the size of an array. Could not specify the dimension of the array in the case of initializer!!!   Correct initialization method: Way array =new int[][]{{1,2} {3,4}, 1:Int[][], {5}, {2,4,2,1}}; Way 2:Int[][...
Read(485) comment(0)

Java Basics: generic and its erasure, non co modification

Please indicate the source: jiq -'s chin Technical Blog One Generic syntax: Generic class: ClassName{} class Generic methods: public (T void F X) {} Basic guidelines: if you can replace generic methods with generic methods, you should use generic methods, because it can make things more clear.   Two Why do you use generics? In the case of SE1.5 Java, without generics, by the type...
Read(1033) comment(1)

Java basis: the application of dynamic agent in RPC framework

RPC, remote procedure call. Is the way to call the remote machine. Is actually very simple principle, is running on the client program in when you call a method on an object, the bottom will be for the method call TCP/HTTP request, is sent to the remote server, remote server to listen on a fixed port, received the TCP/HTTP request will parse out the related information, including client wants to call which class which method, parameter is what, then the corresponding call is called the through data package can be sent back.   RPC in general there will be some "contract" concept, that is, the customer...
Read(1130) comment(0)

Java basis: static agent and dynamic proxy

Please indicate the source: jiq -'s chin Technical Blog Static agent: Suppose that there is a class that implements the specified interface / abstract class: Class RealSubject implements Subject{ Public void (request) { System.out.print ("real request handling\n");...
Read(919) comment(0)

Java basis: RTTI and reflection

Please indicate the source: jiq -'s chin Technical Blog 1 Class file: The full name of the class file is called the Javaclass file, which makes the Java more suitable for the network in terms of platform independence and network mobility. It is in the platform independent aspects of the task is: to provide Java program independent of the underlying host platform for the binary form of service. Each class has an object of a Class type, and whenever a class is compiled, it generates a Class object that is saved in the same name as the.Class object...
Read(490) comment(0)

Java Foundation: String

Please indicate the source: jiq -'s chin Technical Blog (1) String essence: String objects are not to be changed, any action that would appear to modify the String object is actually creating a new Sting object, which is then modified on the new object. And the more efficient StringBuilder just different. (2) the difference between String and StringBuffer: String type and StringBuffe...
Read(427) comment(0)
243 data a total of 13 PagesOne Two Three Four Five ... Next page Shadowe
    personal data
    • Visit174485 times
    • Integral:Three thousand eight hundred and forty
    • Grade
    • Rank:4639th name
    • Original189
    • Reproduced:42
    • Translation:13
    • Comments:30
    Personal thoughts
    [1] this blog is used to study the process of recording and sharing the [2] current main points of interest: distributed service framework, distributed storage framework. [* * *] contact information: 408694711 (QQ),
    Personal profile
    Male, born in 88, Yunnan, Computer Department of Nanjing University Master of engineering, research direction is embedded software engineering. At present, in Nanjing, a large Research Institute of foreign R & D center serving personnel of research and development and project person in charge, 2013 income 8 post. Familiar with Web Java development, embedded driver development, Linux system kernel. The current work mainly lies in the research and development of.NET aspects of distributed architecture. At present, the direction of my interest lies in distributed storage framework, distributed service framework and search technology. Like sports, travel and singing.
    Latest comments