The exact workflow is: the initial data is pulled over HTTP, the code connects to our server over WebSockets and after that no more requests are made. The real-time updates are pushed over the WebSocket connection.
1,457 karma · joined February 16, 2011
[ my public key: https://keybase.io/wulczer; my proof: https://keybase.io/wulczer/sigs/g46dYvOOsEpYFfTEQUY4Hwj5x_gO3JSvfDNXnd4pjvI ]
The exact workflow is: the initial data is pulled over HTTP, the code connects to our server over WebSockets and after that no more requests are made. The real-time updates are pushed over the WebSocket connection.
It's a pretty good technique, actually.
Example A field accepts a username. A good regex would
be to verify that the data consists of the following
[0-9a-A-Z]{3,10}. The data is rejected if it doesn't
match.
I guess then that pg won't be able to sign up for your service... Nor will donfernandovillaverde79.Disclaimer: I wrote an async DB module for Twisted/PostgreSQL and it did not turn out to be all that complex.
Imagine an app that receives an HTTP request every second. One in five of these requests requires making a query that takes 3 seconds to complete. The rest is serviced immediately. You don't want the long request freezing your entire server and preventing the fast requests from being serviced.
The real answer is: always evaluate options. Make sure the solution you choose supports everything you need and that you will be able to learn how to use it or hire people who can. Without knowing what your requirements are it's impossible to say, but in the vast majority of cases, PostgreSQL will be as good as Oracle, MS SQL Server or DB2.
If your evaluation indicates that you need to pay for one of these, double and triple check it... and only if you're 100% sure that's the case, shell out for a commercial RDBMS.
That being said, we are using reload() with manhole to update code. You just have to be extra careful and know what you're doing.
[1] http://twistedmatrix.com/documents/11.0.0/api/twisted.python...
http://twistedmatrix.com/documents/current/api/twisted.html
http://twistedmatrix.com/documents/current/core/howto/index....
http://twistedmatrix.com/trac/wiki/Documentation
It's not as comprehensive and shiny as the core Python docs, but along with the tutorials and examples, it's actually pretty decent.
The values of automatic variables are unspecified after a call to longjmp() if they meet all the following criteria:
· they are local to the function that made the corresponding setjmp(3) call;
· their values are changed between the calls to setjmp(3) and longjmp(); and
· they are not declared as volatile.
I've had bugs that made me go half-crazy before someone reminded me that you have to use volatile in these situations.The rest would probably be found quite quickly, but omitting volatiles could lead to hard to detect bugs that will only manifest themselves under specific circumstances.
#pragma GCC diagnostic ignored "-Wunused-parameter"
to the C file, I get warningless compilation even with -Wextra. you can also do push/pop to store/restore the warnings reporting options.Changing main's signature to int main() eliminates all warnings at -Wextra.
#include <stdio.h>
#define ADD(x, y, z) \
do { \
z = x + y; \
} while (0)
int main(int argc, char *argv[])
{
int z;
ADD(1, 3, z);
printf("z = %d\n", z);
return 0;
}
If your compiler complains about the do{} while (0) construct in macros, I'd be inclined to treat it as a bug and complain to the vendor.For more info about performance, see http://pgeoghegan.blogspot.com/2011/07/could-clang-displace-...
You can still recognize Lispy idioms in many places, there's abundany usage of the List structure, functions called lcons and list_head/list_tail and a NIL constant for an empty list.
See the anecdote at line 77 in a README file: http://git.postgresql.org/gitweb/?p=postgresql.git;a=blob;f=...
By doing that they would volunteer their machines to the cluster pounding away at the big server that was being tested.
EDIT: fix my Scheme
From the page:
Tekuti means "I'm telling you" in Oshiwambo.
It is weblog software written in Scheme, using Git as its persistent store.
'Nuff said.I remember times where back where I lived "walkman" was a plain noun meaning "any kind of portable cassette player".