mongodb - Mongo increase latency tolerance -


I have a capture tool that captures approximately 1000 50-byte data records per second, they are actually a MongoDB The archive stores the time within 1 gigabit Ethernet network

I want to take the server to the Internet, i.e., the capture source and the Mongode database will no longer be on the same LAN. Although the throughput is still likely to be adequate (I have 100 Mbps bidirectional service between two digits, and the capture rate is 1000 * 50 * 8 = 400 Kbps, here are many orders of headroom magnitude, even the upper part In large quantities), the probability of latency is to be a problem

Can I tune Mongo so that it confirms every writing for a few seconds, which can be used to address latency issues. Be able? Does Mongo confirm every writing? All of my tools are written using Python in Python, which every time a data point event occurs, atom writes.

Do I have to manually batch?

is the concept of Mongo, which basically tells you how important it is to write a Instead of loss, you can speed up.

Do not wait to write for the primary written by worrying about typing "unexpected" - it basically shows the data in the socket and goes on its way. It is very fast, But this means that the data is probably lost if the socket is closed before the data is sent, or the primary steps are down before typing. This is the UDP-IIS in this case (though it is still TCP).

Due to the concerns of writing "accepted" and "journal", the Mongolia driver will be blocked for writing to the server and accepted (and in the case of the magazine, once it's on -Disk is written in the journal). It is more secure (but also slow) than the unexpected writing, but there is still the possibility of loss of primary data if the primary session has to quit before replacing it with another.

Writing a "majority" causes the Mongo driver to be blocked until the server has written in writing, and writes most nodes in the replica set. This is the slowest writing mode, but the most durable, and many last stability reduces the worries.

Why are you taking the server out of the LAN? If you need to access it externally, you can set up a replica set with it and repeat it out of the LAN. In this way, your writing may still be with a local priority with the concern of writing a "local magazine" and is repeated in the secondary without worrying too much about filling the system.

Comments

Popular posts from this blog

php - PDO bindParam() fatal error -

logging - How can I log both the Request.InputStream and Response.OutputStream traffic in my ASP.NET MVC3 Application for specific Actions? -

java - Why my included JSP file won't get processed correctly? -