#1
  1. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Jul 2017
    Posts
    3
    Rep Power
    0

    Online aerodynamics - server architecture


    Hi everyone,

    I'm looking for advice on how to build our server architecture!

    At our startup, we're building an online aerodynamics platform.
    We're at the beginning of development (apart from the aero scripts), which means we have to determine an architecture & choose programming languages for each block.
    After talking to a number of developers, the idea would be the following:

    Back-end
    - General language
    Use python (instead of php for example) as it is widely used and scalable (we'll be doing a lot of simulations, hopefully ).
    Is that a good choice (risky to ask in a python forum, I know)?
    - Data
    Each calculation generates a lot of data (some GB's). Are there specific structures/tools/compression methods to manage this, or just drop it on the server?
    Should we use MySQL for example to manage user data (also the small data, like project names, user details, ...)?
    Is that compatible with python?
    - Encryption / authentication
    To provide comfort regarding confidentiality, we should encrypt data and provide secure login.
    Are there specific tools for that (preferrably in a python environment)?
    - API's
    Easy to write in python?
    - Framework
    Is Django a good framework to use? Or is this something for people with limited experience, and should you code everything yourselve to build it properly?
    - What other tools should we consider (nginx, apache, ...)? Things are new to me!

    Aero
    - Our scripts modify text files using m4 and mustache. Is that a good choice or are there better alternatives?

    Front-end
    - Framework
    Would Angular / react be a good choice to put on top of Python/Django?
    Is there something in between to let them communicate?
    - 3D
    We would use WebGL (Three.JS): does anyone have experience with this?
    Blend4web could be an alternative: anyone know this one?



    General:
    - Are there good visuals available on how all these blocks work together (back-end layer, front-end layer, ...)?
    Or perhaps even a configurator?
    - Will it pay off to have python as the preferred language throughout the company?
    Or am I focusing too much on this (and will I select non-ideal solutions just because they're python based)?

    Thanks a lot for all your tips to get us started!!

    Wouter.
  2. #2
  3. Contributing User
    Devshed God 1st Plane (5500 - 5999 posts)

    Join Date
    Aug 2011
    Posts
    5,843
    Rep Power
    509
    Python gives you an incredible language with community support, debugging, documentation. Has a complete set of container objects both mutable and immutable. As well as good coverage over mathematical constructs, sets, complex numbers, extended precision. Python has all sorts of standard libraries, and much more is available. Interface to compiled languages is straightforward, well documented.

    Drawbacks? ABAQUS finite element software uses python as a front end, and the company has a miserable time keeping up with python versions. That is, they were stuck using a python version well after support for that version ended. Still use Windows NT? There's a lot of it installed.

    As I recall, the python foundation has guaranteed that some of the python3 interface to external code will not change.
    [code]Code tags[/code] are essential for python code and Makefiles!
  4. #3
  5. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Jul 2017
    Posts
    3
    Rep Power
    0
    Hi b49P23Tlvg,

    thanks for the feedback!
    So in general, python would be a good choice then, if I stick to it for back-end and use a long term support release?
  6. #4
  7. Contributing User
    Devshed God 1st Plane (5500 - 5999 posts)

    Join Date
    Aug 2011
    Posts
    5,843
    Rep Power
    509
    Seems so. yes.
    [code]Code tags[/code] are essential for python code and Makefiles!
  8. #5
  9. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Jul 2017
    Posts
    3
    Rep Power
    0
    allright, thanks a lot for the help!!! This will set me on my way

IMN logo majestic logo threadwatch logo seochat tools logo