Python Development Services - Laitkor |
The difficulties in scaling python applications
1. Scaling a website application will probably need to first address the more general problem of dealing with larger code base which is generally said to be a weak point of Python as a language. Because of the larger code base, they choose a static typed language first because it is said to be easier to manage.
2. The major setback is suffered when there is reduction of readily available expressiveness power among which meta-programming. This can be mitigated with proper tooling or proper languages like Scala, which finds its place on Twitter to replace Ruby.
3. Before choosing Python for a web scale, it must go through the same scrutiny that leads some big names to move to a static typed language. You can write database queries in Python for Java based database by choosing Jython. Python is better tool to deal with asynchronous code than JavaScript.
4. You can expect a much greater scalability boost from async python framework. It would specifically depend on how stateful the application is and on how much communication and synchronization is necessary between web server instances.
5. It totally depends on the architecture of the website and is not really that difficult.
First you need to follow the following optimizations and then you can think of other optimizations:
• Use Apache for Dynamic content and Nginx for static
• Tornado can be used for serving APIs due to its async nature and it can also be scaled easily.
• For serving content, you can use CDN
• You can compress CSS and JS
• You should know the load balancers and auto scaling features
• You must understand the proper use of vertical and horizontal scaling.
Web applications are very rarely computationally intensive. Python can technically be part and is part of web scale products even if most of the time we cannot be sure that it is not just to replace Makefiles cf. Choosing Python for a web scale application must go through the same scrutiny that lead some big names to move to a static typed language.
Laitkor is a technology Partner with a difference. We provide assistance to companies for rapid grow of fusing technology, trends and solution. We are pleased to support our Client for proactive designing, software and app development, system administration, security beef up, database management and many more.
No comments:
Post a Comment
Note: Only a member of this blog may post a comment.