|
Pythomnic » Features
Front page highlights:
1. Simple development lifecycle.
2. Unified interface support for various network protocols.
3. Simple modularization.
...
Plus:
4. Ease of use.
"Must be usable and practical" is the key design principle for Pythomnic. It is what
the actual developer does which is important, and life's too short to fight the language
or development platform. Pythomnic provides the environment and hides tedious details,
but does not get in the developer's way. No paradigms to learn, no need to shape your
code in any unusual way. "This is where you write your stuff" is all the developer
needs to know.
5. Easy to use persistency.
Putting objects to stable storage is easy, you don't need a separate database
or an ORM to do that. Pythomnic has a simple storage facility to store any Python
object so that it survives between separate requests or service restart. This "safe"
facility uses BerkeleyDB embedded database which is fast and reliable.
6. Unified databases and other external systems support.
Pythomnic supports PostgreSQL, MSSQL, MySQL and Oracle. But then they are but
one class of external systems which Pythomnic can utilize. In the course of request
processing your application will typically access several different systems, which
could also be messaging servers such as JMS, SMPP or SMTP or application servers
such as LDAP. Access to all external systems is provided in a uniform way.
But:
7. Limited vertical scalability.
If you need a single server to process a hundred simultaneous requests or few hundred
requests per second, look somewhere else. To simplify things, Pythomnic uses threads
and allocates a thread per request for the entire duration of its processing.
Although Pythomnic tries to compensate by pooling worker threads and network
service are frequently I/O bound, Python is still not a thread-friendly language.
In practice this is rarely a limitation, because the typical request rate is not
so high, the external systems saturate before, and you can always resort to
horizontal scalability.
|
Features Download Documentation Tutorial |