Solved

Ironpython in production environments

Posted on 2011-03-16
6
388 Views
Last Modified: 2012-05-11
Is Ironpython safe to use in a production environment?
0
Comment
Question by:geldfeld
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 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
[Webinar] How Hackers Steal Your Credentials

Do You Know How Hackers Steal Your Credentials? Join us and Skyport Systems to learn how hackers steal your credentials and why Active Directory must be secure to stop them. Thursday, July 13, 2017 10:00 A.M. PDT

 
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

Enroll in June's Course of the Month

June's Course of the Month is now available! Every 10 seconds, a consumer gets hit with ransomware. Refresh your knowledge of ransomware best practices by enrolling in this month's complimentary course for Premium Members, Team Accounts, and Qualified Experts.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Less strange, but still introduction This introduction was added (1st August, 2011) to reflect some reactions.  Firstly, the term basics in the title of the article...  As any other word, it is a symbol with meaning attached to the word by some a…
Flask is a microframework for Python based on Werkzeug and Jinja 2. This requires you to have a good understanding of Python 2.7. Lets install Flask! To install Flask you can use a python repository for libraries tool called pip. Download this f…
Learn the basics of if, else, and elif statements in Python 2.7. Use "if" statements to test a specified condition.: The structure of an if statement is as follows: (CODE) Use "else" statements to allow the execution of an alternative, if the …
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…

691 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