1

Topic: The modern method the decision of problems

As in the modern world solve problems: Memory leaks - application restarting: how in Instagram disconnected garbage collector Python and started to live Instead of a competent method to put files in system - to get the virtual surrounding for each component: Development for Node.js, CMake with several compilers. It would be interesting to hear still. What think of it?

2

Re: The modern method the decision of problems

Hello, _NN _, you wrote: _NN> Memory leaks - application restarting: how in Instagram disconnected garbage collector Python and started to live... _NN> That think of it? Garbage collector shut-down gives a double scoring: We released almost 8  operative storage on each server and could use them for creation  amounts of worker processes on servers with restricted throughput of storage, or to reduce an amount of restartings of processes on servers with restriction on capacity of the CPU; Throughput of the CPU also increased, as the amount of the instructions executable for one clock period (IPC) increases almost on 10 %. If they so are torn to control manually storage could use a C ++. But clear business that could not because enough to esteem history Instagram. Here after all business in scaling if the server one or the several people do as can. Iron to buy more cheaply, than to employ programmers for rigid optimization. But if the project shot, and such units for thousand and tens thousand servers it is "suddenly clarified that optimization gives not sickly saving. And as a matter of fact that they need to do, here they and are engaged in administration of servers. Disconnecting garbage collector Python (GC) which releases storage, tracing and deleting not used data, Instagram began to work on 10 % faster. Yes-yes, you did not mishear! Yes-yes, using a C ++ they could achieve still  productivity, but it is necessary to be realists all the same. The decision already works let and through a bum, and probably all perfectly know as eulogized the same garbage collectors which appeared in reply to attempt to control operative storage automatically, that is finally not to care of optimization. Well and  they too could control manually. More precisely programmers could control, and in our case it is a question of administration,  and is fine. In what as a matter of fact a question? You do not think that they begin to rewrite all system from zero. And over reliability there it is hardly necessary.

3

Re: The modern method the decision of problems

Hello, velkin, you wrote: V> If they so are torn to control manually storage could use a C ++. But clear business that could not because enough to esteem history Instagram. Here after all business in scaling if the server one or the several people do as can. Iron to buy more cheaply, than to employ programmers for rigid optimization. To alter on a C ++ occupies  time and forces, moreover and good developers it is necessary to find and accordingly to pay more. V> Well and  they too could control manually. Programmers more precisely could control, and in our case it is a question of administration,  and is fine. In what as a matter of fact a question? You do not think that they begin to rewrite all system from zero. And over reliability there it is hardly necessary. Who else so does a question on that and whether it is considered it correct.

4

Re: The modern method the decision of problems

Hello, _NN _, you wrote: _NN> As in the modern world solve problems: _NN> Memory leaks - application restarting: how in Instagram disconnected garbage collector Python and started to live _NN> That think of it? A normal method we in C# asp.net service had a memory leak. So it appeared that by the night was devoured approximately half of storage of the server (already in the absence of loading).  restart IIS for the night and after service restart, it again was ready to work all the day normally. Leak already strongly then found (it is possible to tell that almost casually), but for a moment has not been found yet, this decision was optimal. Quickly, the problem dares, strongly is cheaper than expenditure of time of the programmer for search of a source of leak and elimination. As a matter of fact it is such garbage collector with the big period the whole days to be saved, then it is smoothed out.

5

Re: The modern method the decision of problems

Hello, _NN _, you wrote: _NN> As in the modern world solve problems: _NN> Memory leaks - application restarting: how in Instagram disconnected garbage collector Python and started to live _NN> Instead of a competent method to put files in system - to get the virtual surrounding for each component: Development for Node.js, CMake with several compilers. _NN> it would be interesting to hear still. _NN> That think of it? Generally even in microcontrollers many years are watchdog which check that the device ceased to respond and simply restarts it. The same on a considerable quantity of the industrial equipment - the superclever machine tool working without the person with the conditional Windows and the stupid controler, which all function - to check that the Windows respond and if are not present, it is rigid . To create ideally reliable - it is without restraint expensive (an example - mainframes), and on the basis of kommoditi-decisions with the props processing unreliability - quite norms.

6

Re: The modern method the decision of problems

Hello, _NN _, you wrote: _NN> As in the modern world solve problems: _NN> _NN> That think of it? Similar stories from eao197: periodic restarting of all and all (JVM, With ++, RoR).

7

Re: The modern method the decision of problems

MH> a normal method we in C# asp.net service had a memory leak. So it appeared that by the night was devoured approximately half of storage of the server (already in the absence of loading).  restart IIS for the night and after service restart, it again was ready to work all the day normally. MH> leak already strongly then found (it is possible to tell that almost casually), but for a moment has not been found yet, this decision was optimal. Quickly, the problem dares, strongly is cheaper than expenditure of time of the programmer for search of a source of leak and elimination. MH> as a matter of fact it is such garbage collector with the big period the whole days to be saved, then it is smoothed out. In what the problem was? And that at me is similar while too dares restart. As hands reach - we dig out, but explicit anything at once did not find.

8

Re: The modern method the decision of problems

Hello, Temnikov, you wrote: MH>> a normal method we in C# asp.net service had a memory leak. So it appeared that by the night was devoured approximately half of storage of the server (already in the absence of loading).  restart IIS for the night and after service restart, it again was ready to work all the day normally. MH>> leak already strongly then found (it is possible to tell that almost casually), but for a moment has not been found yet, this decision was optimal. Quickly, the problem dares, strongly is cheaper than expenditure of time of the programmer for search of a source of leak and elimination. MH>> as a matter of fact it is such garbage collector with the big period the whole days to be saved, then it is smoothed out. T> in what the problem was? And that at me is similar while too dares restart. As hands reach - we dig out, but explicit anything at once did not find. Very specific was - on F# with usage async and MailboxProcessor any queues and  have been made. Hardly at you such try in the end of day memori-profajlerom  to worker process and look what objects it is anomalous a lot of live, we and groped a problem root.

9

Re: The modern method the decision of problems

Hello, _NN _, you wrote: _NN> It would be interesting to hear still. Spaced apart  libraries on different processes that they each other did not spoil storage. Gave different  to components an own heap, which beat together with a component thus to defragment and clear storage.

10

Re: The modern method the decision of problems

Hello, _NN _, you wrote: _NN> Memory leaks - application restarting: how in Instagram disconnected garbage collector Python and started to live Actually idea quite sensible, especially for web applications. As it it is necessary to do a good example correctly - Ur/Web. There simply there is garbage collector - for everyone http no request the heap, after end of request it is released. Well and the compiler leads a certain static analysis to minimize storage separation. _NN> it would be interesting to hear still. In Python often use the virtual surroundings, and the approach much more , than in Node.js. There is a new copy of the interpreter of the necessary version, in it all dependences are installed. Historically so it was added because almost in all Linuxes there are preinstalled versions of the Python which are necessary for normal operation of Linux. That is to break them it is very undesirable and thus they it is still very frequent also become outdated. Therefore dependences of the project to put in "system" Python it is not recommended and it is necessary to create the virtual surrounding. _NN> that think of it? I think that among programmers there are not enough real heroes who would despair even to try to solve existing serious problems without crutches. First of all because such heroism is not perceived by a society as something valuable, often simply ignored. There is a song approximately on this subject: No More Heroes