Solved

Ironpython in production environments

Posted on 2011-03-16
6
364 Views
Last Modified: 2012-05-11
Is Ironpython safe to use in a production environment?
0
Comment
Question by:geldfeld
  • 4
  • 2
6 Comments
 
LVL 5

Expert Comment

by:-Richard-
ID: 35147828
My understanding of Iron Python is that it is an implementation of Python which runs under the Microsoft CLR (Common Language Runtime).  The CLR is the foundation for ll of Microsoft's .NET languages, and as such,  I would expect Iron Python would be just as safe in a production environment as any other Microsoft languages.
0
 
LVL 5

Expert Comment

by:-Richard-
ID: 35147841
Typo correction - "all of MIcrosoft's .NET languages".  Without the "a" it looked like I was saying eleven of their languages!
0
 

Author Comment

by:geldfeld
ID: 35157392

I use IronPython as it is with dependencies on .NET libraries

I plan to port my IronPython  prototype to C#  ( which is relatively straightforward )

I may not have to do this if IronPython can be used in a production environment. I can leave the modify the current IronPython code base and deploy that. Which is why I asked: is this safe to do?
0
Highfive Gives IT Their Time Back

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

 
LVL 5

Accepted Solution

by:
-Richard- earned 500 total points
ID: 35157671
In general, things which work in a development environment can be deployed to a production environment.   I don't know why Iron Python should be different.   What exactly are you concerned about?  Are you concerned about throughput, because your production environment will be much busier than development?   Are you concerned about compatibility with other software running on your production environment?  As far as that goes, it is true that different versions of Iron Python are compatible with different versions of the .NET runtime.  Here is an excerpt from the Wikipedia article on Iron Python which talks about that:

Status and roadmap

Release 2.0, released on December 10, 2008, and updated as 2.0.3 on October 23, 2009, targets CPython 2.5.[3] IronPython 2.0.3 is only compatible up to .NET Framework 3.5.

Release 2.6, released on December 11, 2009, and updated on April 12, 2010, targets CPython 2.6.[4] IronPython 2.6.1 versions is binary compatible only with .NET Framework 4.0. IronPython 2.6.1 must be compiled from sources to run on .NET Framework 3.5. Iron Python 2.6.2, released on October 21, 2010, is binary compatible with both .NET Framework 4.0 and .NET Framework 3.5.

Release 2.7, still in beta stage, targets CPython 2.7.[5]

However, in general, if your development environment is set up similarly to your production environment, and it works in development, you should be OK.

If you're still concerned, you might want to consider production rollout strategies that could mitigate risk, such as a limited initial release, or a release to only one server on a multi-server environment.
0
 
LVL 5

Expert Comment

by:-Richard-
ID: 35157699
One other point is that, according to that Wikipedia article, Iron Python itself is implemented entirely in C#.... so as far as porting it to C# goes, in a sense, it is already a C# program!
0
 

Author Comment

by:geldfeld
ID: 35163859
@richard  - I am concerned that the behaviour of my application may not be consistent running in a C# and Python ( jython ) environment. You are probably right that if we test the code extensively under production load it should run as expected.


Does anyone know of any unexpected behaviour from jython applications from a Python or a .NET perspective?
0

Featured Post

Top 6 Sources for Identifying Threat Actor TTPs

Understanding your enemy is essential. These six sources will help you identify the most popular threat actor tactics, techniques, and procedures (TTPs).

Join & Write a Comment

"The time has come," the Walrus said, "To talk of many things: Of sets--and lists--and dictionaries-- Of variable kinks-- And why you see it changing not-- And why so strange are strings." This part describes how variables and references (see …
Introduction On September 29, 2012, the Python 3.3.0 was released; nothing extremely unexpected,  yet another, better version of Python. But, if you work in Microsoft Windows, you should notice that the Python Launcher for Windows was introduced wi…
Learn the basics of lists in Python. Lists, as their name suggests, are a means for ordering and storing values. : Lists are declared using brackets; for example: t = [1, 2, 3]: Lists may contain a mix of data types; for example: t = ['string', 1, T…
Learn the basics of while and for loops in Python.  while loops are used for testing while, or until, a condition is met: The structure of a while loop is as follows:     while <condition>:         do something         repeate: The break statement m…

708 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

17 Experts available now in Live!

Get 1:1 Help Now