Unicorn Reference Architecture

Total Page:16

File Type:pdf, Size:1020Kb

Unicorn Reference Architecture D1.2 Unicorn Reference Architecture Unicorn Reference Architecture Deliverable D1.2 Editors Athanasios Tryfonos Demetris Trihinas Reviewers Julia Vuong (CAS) Panos Gouvas (Ubitech) Sotiris Koussouris (Suite5) Date 29 September 2017 Classification Public 1 D1.2 Unicorn Reference Architecture Contributing Author # Version History Name Partner Description Table of Contents (ToC) and partner Demetris Trihinas UCY 1 contribution assignment. Athanasios Tryfonos UCY 2 Updated section 8 and subsections structure. Unicorn System Requirements and User Role Zacharias Georgiou UCY 3 Overview. State-of-the art for Cloud Application Design George Pallis UCY 4 and Management & Cloud Application Security and Privacy Added Reference Architecture diagrams and Fenareti Lampathaki Suite5 5 description Added Section 5 flow diagrams and updated Sotiris Koussouris Suite5 6 architecture description Updated architecture based on received Spiros Koussouris Suite5 7 feedback. Added unicorn use-cases Merged content regarding reference Manos Papoutsakis FORTH 8 architecture. Merged content regarding state- of-the-art Updated introduction and added executed Giannis Ledakis Ubitech 9 summary and conclusion Merged content for demonstrators and Panagiotis Gouvas Ubitech 10 implementation aspects Merged content regarding architecture flows Julia Vuong CAS 12 and new diagrams, updated introduction and state-of-the-art Merged updates regarding demonstrators, Spiros Alexakis CAS 13 use-cases and introduction Minor refinements on all document. Erik Robertson Redikod 14 Document finalized for internal review. 2 D1.2 Unicorn Reference Architecture 15 Reviewer comments addressed Inserted Table of Abbreviations and updated 16 Executive Summary 17 Final Version 3 D1.2 Unicorn Reference Architecture Contents Contents 4 1 Introduction 12 1.1 Document Purpose and Scope 13 1.2 Document Relationship with other Project Work Packages 13 1.3 Document Structure 14 2 State of the Art and Key Technology Axes 16 2.1 Micro-Service Application Development Paradigm 16 2.2 Cloud Application Design and Management 19 2.2.1 Cloud Application Portability, Interoperability and Management 19 2.2.2 Monitoring 20 2.2.3 Elastic Scaling 22 2.3 Cloud Application Security and Data Privacy Enforcement 23 2.3.1 Data privacy-by-design and encrypted persistency 23 2.3.2 Security and Data Restriction Policy Enforcement Mechanism 24 3.3.3 Risk and Vulnerability Assessment 25 2.4 Containerization and Cluster Orchestration 26 3 Unicorn System Requirements and User Role Overview 30 4 Unicorn Reference Architecture 33 4.1 Motivational Example 40 4.2 Cloud Application Development and Validation 41 4.3 Application Deployment 45 4.4 Monitoring and Elasticity 47 4.5 Security and Privacy Enforcement 49 5 Unicorn Use-Cases 53 6 Unicorn Demonstrators 79 6.1 Enterprise Social Data Analytics 79 6.1.1 Overview 79 6.1.2 Technical Implementation 80 6.1.3 Business and Technical Challenges 81 6.1.4 Demonstrator Relevance to Unicorn Use Cases 83 6.2 Encrypted Voice Communication Service over Programmable Infrastructure 84 6.2.1 Overview 84 6.2.2 Technical Implementation 84 6.2.3 Business and Technical Challenges 85 4 D1.2 Unicorn Reference Architecture 6.2.4 Demonstrator Relevance to Unicorn Use Cases 86 6.3 Prosocial Learning Digital Game 87 6.3.1 Overview 87 6.3.2 Technical Implementation 87 6.3.3 Business and Technical Challenges 88 6.3.4 Demonstrator Relevance to Unicorn Use Cases 89 6.4 Cyber-Forum Cloud Platform for Startups and SMEs 90 6.4.1 Overview 90 6.4.2 Technical Implementation 91 6.4.3 Business and Technical Challenges 94 6.4.4 Demonstrator Relevance to Unicorn Use Cases 95 7 Implementation Aspects of Reference Architecture 96 7.1 Version Control System 98 7.2 Continuous Integration 98 7.3 Quality Assurance 99 7.4 Release Planning and Artefact Management 99 7.5 Issue Tracking 99 8 Conclusions 101 9 References 102 5 D1.2 Unicorn Reference Architecture List of Figures Figure 1: Technologies that Unicorn relies on and will contribute to 12 Figure 2: Deliverable Relationship with other Tasks and Work Packages 14 Figure 3: Container-based Virtualization 27 Figure 4: Usage of Linux containerization toolkit by Docker 28 Figure 5: CoreOS Host and Relation to Docker Containers 28 Figure 6: Identified Unicorn Actors 31 Figure 7: Non-functional requirements 32 Figure 8: Unicorn Reference Architecture 33 Figure 9: Eclipse CHE High-Level Architecture 34 Figure 10: Unicorn Eclipse CHE Plugin Overview 36 Figure 11: High-Level Unicorn Orchestration 37 Figure 12: Tosca Topology Template 38 Figure 13: Unicorn Core Context Model Mapping 40 Figure 14: Content Streaming Cloud Application 41 Figure 15: Cloud Application Development and Validation 44 Figure 16: Application Deployment 46 Figure 17: Monitoring & Elasticity Flow 48 Figure 18: Security Enforcement 50 Figure 19: Privacy Enforcement 51 Figure 20: Unicorn Use Case UML Diagram 53 Figure 21: S5 Enterprise Data Analytics Suite*Social Architecture 80 Figure 22: CAS SmartWe and OPEN Deployment 92 Figure 23: CAS OPEN Architecture 93 Figure 24: Major releases of Unicorn Integrated Framework 97 Figure 25: Development Lifecycle 98 List of Tables Table 1: Mapping of functional requirements to user roles 31 Table 2: Policies for Content Streaming Application 41 Table 3: Define runtime policies and constraints use-case 54 Table 4: Develop Unicorn-enabled cloud application 54 Table 5: Package Unicorn-enabled cloud application 55 Table 6: Deploy Unicorn-compliant cloud application 56 Table 7: Manage the runtime lifecycle of a deployed cloud application 57 Table 8: Manage privacy preserving mechanisms into design time 58 Table 9: Manage privacy enforcement on runtime 59 Table 10: Manage security enforcement mechanisms 60 Table 11: Manage security enforcement mechanisms (enabler enforces security/privacy constraints) 61 Table 12: Monitor application behaviour and performance 62 Table 13: Adapt deployed cloud applications in real time 63 Table 14: Get real-time notifications about security incidents and QoS guarantees 64 Table 15: Perform deployment assembly validation 65 6 D1.2 Unicorn Reference Architecture Table 16: Perform security and benchmark tests 66 Table 17: Manage cloud provider credentials 67 Table 18: Search for fitting cloud provider offerings 68 Table 19: Define application placement conditions 68 Table 20: Develop code annotation libraries 70 Table 21: Develop enablers enforcing policies via code annotations 71 Table 22: Provide abstract description of programmable cloud execution environment through unified API 71 Table 23: Develop and use orchestration tools for (multi-)cloud deployments 72 Table 24: Manage programmable infrastructure, service offerings and QoS 73 Table 25: Ensure secure data migration across cloud sites and availability zones 73 Table 26: Ensure security and data privacy standards 74 Table 27: Monitor network traffic for abnormal or intrusive behaviour 75 Table 28: Manage the Unicorn core context model 76 Table 29: Manage enablers enforcing policies via code annotations 77 Table 30: Manage cloud application owners 78 Table 31: Enterprise Social Data Analytics Relevance to Use Cases 83 Table 32: ubi:phone Relevance to use cases 86 Table 33: Prosocial Learning Relevance to use cases 89 Table 34: Cyber-Forum Relevance to use cases 95 7 D1.2 Unicorn Reference Architecture Executive Summary Unicorn deliverable D1.2 – Unicorn Reference Architecture, hereafter simply referred to as D1.2, moves one step closer to the fulfillment of the vision of the project which is the development of a framework that facilitates EU- wide digital SME’s and startups to deploy cloud applications following the micro-service paradigm to multi-cloud execution environments. In Unicorn D1.1 Stakeholders Requirements Analysis [1], we analyzed the particular and demanding ICT needs of SMEs and startups by trawling leading industry studies and conducting personalized interviews with our target audience. Through this analysis we extracted the functional and non-functional requirements and user roles for the Unicorn Framework eco-system. Furthermore, we identified gaps in the industry and academia that Unicorn fills in. Based on this comprehensive analysis, we define in D1.2 the overall architecture of Unicorn and the components that comprise it, in complete alignment with the derived functional and non-functional requirements. The figure above illustrates a high-level overview of the Unicorn Reference Architecture. It is comprised of three distinct layers: i) the Unicorn Cloud IDE Plugin, ii) the Unicorn Platform and iii) the Multi-Cloud Execution Environment. 8 D1.2 Unicorn Reference Architecture The Unicorn Cloud Plugin IDE is organized into two perspectives(facets). At the Development Perspective, Application Developers, via the Annotated Source Code Editor develop secure, elastic, and privacy-aware cloud applications using the annotative Design Libraries and Product Managers define design-time, run-time and privacy policies and initiate the deployment process. At the Management Perspective, Application Administrators, using the intuitive Graphical User Interface of the plugin, can monitor and manage deployed applications. The plugin itself is built on top of the popular and open-source cloud IDE Eclipse Che [2], developed and maintained by the Eclipse Foundation community. Reasoning behind Che being Unicorn’s IDE of choice originates from Unicorn’s ICT SME/Startup survey results presented in D1.1, that have shown that Eclipse Che is currently the most popular cloud IDE among
Recommended publications
  • Zope Documentation Release 5.3
    Zope Documentation Release 5.3 The Zope developer community Jul 31, 2021 Contents 1 What’s new in Zope 3 1.1 What’s new in Zope 5..........................................4 1.2 What’s new in Zope 4..........................................4 2 Installing Zope 11 2.1 Prerequisites............................................... 11 2.2 Installing Zope with zc.buildout .................................. 12 2.3 Installing Zope with pip ........................................ 13 2.4 Building the documentation with Sphinx ............................... 14 3 Configuring and Running Zope 15 3.1 Creating a Zope instance......................................... 16 3.2 Filesystem Permissions......................................... 17 3.3 Configuring Zope............................................. 17 3.4 Running Zope.............................................. 18 3.5 Running Zope (plone.recipe.zope2instance install)........................... 20 3.6 Logging In To Zope........................................... 21 3.7 Special access user accounts....................................... 22 3.8 Troubleshooting............................................. 22 3.9 Using alternative WSGI server software................................. 22 3.10 Debugging Zope applications under WSGI............................... 26 3.11 Zope configuration reference....................................... 27 4 Migrating between Zope versions 37 4.1 From Zope 2 to Zope 4 or 5....................................... 37 4.2 Migration from Zope 4 to Zope 5.0..................................
    [Show full text]
  • Load Testing of Containerised Web Services
    UPTEC IT 16003 Examensarbete 30 hp Mars 2016 Load Testing of Containerised Web Services Christoffer Hamberg Abstract Load Testing of Containerised Web Services Christoffer Hamberg Teknisk- naturvetenskaplig fakultet UTH-enheten Load testing web services requires a great deal of environment configuration and setup. Besöksadress: This is especially apparent in an environment Ångströmlaboratoriet Lägerhyddsvägen 1 where virtualisation by containerisation is Hus 4, Plan 0 used with many moving and volatile parts. However, containerisation tools like Docker Postadress: offer several properties, such as; application Box 536 751 21 Uppsala image creation and distribution, network interconnectivity and application isolation that Telefon: could be used to support the load testing 018 – 471 30 03 process. Telefax: 018 – 471 30 00 In this thesis, a tool named Bencher, which goal is to aid the process of load testing Hemsida: containerised (with Docker) HTTP services, is http://www.teknat.uu.se/student designed and implemented. To reach its goal Bencher automates some of the tedious steps of load testing, including connecting and scaling containers, collecting system metrics and load testing results to name a few. Bencher’s usability is verified by testing a number of hypotheses formed around different architecture characteristics of web servers in the programming language Ruby. With a minimal environment setup cost and a rapid test iteration process, Bencher proved its usability by being successfully used to verify the hypotheses in this thesis. However, there is still need for future work and improvements, including for example functionality for measuring network bandwidth and latency, that could be added to enhance process even further. To conclude, Bencher fulfilled its goal and scope that were set for it in this thesis.
    [Show full text]
  • Release 19.9.0 Benoit Chesneau
    Gunicorn Documentation Release 19.9.0 Benoit Chesneau Jul 03, 2018 Contents 1 Features 3 2 Contents 5 2.1 Installation................................................5 2.2 Running Gunicorn............................................7 2.3 Configuration Overview.........................................9 2.4 Settings.................................................. 10 2.5 Instrumentation.............................................. 28 2.6 Deploying Gunicorn........................................... 29 2.7 Signal Handling............................................. 35 2.8 Custom Application........................................... 37 2.9 Design.................................................. 38 2.10 FAQ.................................................... 41 2.11 Community................................................ 43 2.12 Changelog................................................ 44 i ii Gunicorn Documentation, Release 19.9.0 Website http://gunicorn.org Source code https://github.com/benoitc/gunicorn Issue tracker https://github.com/benoitc/gunicorn/issues IRC #gunicorn on Freenode Usage questions https://github.com/benoitc/gunicorn/issues Gunicorn ‘Green Unicorn’ is a Python WSGI HTTP Server for UNIX. It’s a pre-fork worker model ported from Ruby’s Unicorn project. The Gunicorn server is broadly compatible with various web frameworks, simply implemented, light on server resources, and fairly speedy. Contents 1 Gunicorn Documentation, Release 19.9.0 2 Contents CHAPTER 1 Features • Natively supports WSGI, Django, and Paster • Automatic
    [Show full text]
  • Abkürzungs-Liste ABKLEX
    Abkürzungs-Liste ABKLEX (Informatik, Telekommunikation) W. Alex 1. Juli 2021 Karlsruhe Copyright W. Alex, Karlsruhe, 1994 – 2018. Die Liste darf unentgeltlich benutzt und weitergegeben werden. The list may be used or copied free of any charge. Original Point of Distribution: http://www.abklex.de/abklex/ An authorized Czechian version is published on: http://www.sochorek.cz/archiv/slovniky/abklex.htm Author’s Email address: [email protected] 2 Kapitel 1 Abkürzungen Gehen wir von 30 Zeichen aus, aus denen Abkürzungen gebildet werden, und nehmen wir eine größte Länge von 5 Zeichen an, so lassen sich 25.137.930 verschiedene Abkür- zungen bilden (Kombinationen mit Wiederholung und Berücksichtigung der Reihenfol- ge). Es folgt eine Auswahl von rund 16000 Abkürzungen aus den Bereichen Informatik und Telekommunikation. Die Abkürzungen werden hier durchgehend groß geschrieben, Akzente, Bindestriche und dergleichen wurden weggelassen. Einige Abkürzungen sind geschützte Namen; diese sind nicht gekennzeichnet. Die Liste beschreibt nur den Ge- brauch, sie legt nicht eine Definition fest. 100GE 100 GBit/s Ethernet 16CIF 16 times Common Intermediate Format (Picture Format) 16QAM 16-state Quadrature Amplitude Modulation 1GFC 1 Gigabaud Fiber Channel (2, 4, 8, 10, 20GFC) 1GL 1st Generation Language (Maschinencode) 1TBS One True Brace Style (C) 1TR6 (ISDN-Protokoll D-Kanal, national) 247 24/7: 24 hours per day, 7 days per week 2D 2-dimensional 2FA Zwei-Faktor-Authentifizierung 2GL 2nd Generation Language (Assembler) 2L8 Too Late (Slang) 2MS Strukturierte
    [Show full text]
  • Release 20.0.4 Benoit Chesneau
    Gunicorn Documentation Release 20.0.4 Benoit Chesneau Feb 16, 2021 Contents 1 Features 3 2 Contents 5 2.1 Installation................................................5 2.2 Running Gunicorn............................................7 2.3 Configuration Overview......................................... 10 2.4 Settings.................................................. 11 2.5 Instrumentation.............................................. 31 2.6 Deploying Gunicorn........................................... 31 2.7 Signal Handling............................................. 38 2.8 Custom Application........................................... 40 2.9 Design.................................................. 42 2.10 FAQ.................................................... 44 2.11 Community................................................ 47 2.12 Changelog................................................ 48 Index 75 i ii Gunicorn Documentation, Release 20.0.4 Website http://gunicorn.org Source code https://github.com/benoitc/gunicorn Issue tracker https://github.com/benoitc/gunicorn/issues IRC #gunicorn on Freenode Usage questions https://github.com/benoitc/gunicorn/issues Gunicorn ‘Green Unicorn’ is a Python WSGI HTTP Server for UNIX. It’s a pre-fork worker model ported from Ruby’s Unicorn project. The Gunicorn server is broadly compatible with various web frameworks, simply implemented, light on server resources, and fairly speedy. Contents 1 Gunicorn Documentation, Release 20.0.4 2 Contents CHAPTER 1 Features • Natively supports WSGI, Django, and Paster
    [Show full text]
  • Opennebula 5.8 Deployment Guide Release 5.8.5
    OpenNebula 5.8 Deployment guide Release 5.8.5 OpenNebula Systems Sep 25, 2019 This document is being provided by OpenNebula Systems under the Creative Commons Attribution-NonCommercial- Share Alike License. THE DOCUMENT IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IM- PLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE DOCUMENT. i CONTENTS 1 Cloud Design 1 1.1 Overview.................................................1 1.2 Open Cloud Architecture.........................................2 1.3 VMware Cloud Architecture.......................................7 1.4 OpenNebula Provisioning Model.................................... 13 2 OpenNebula Installation 19 2.1 Overview................................................. 19 2.2 Front-end Installation.......................................... 19 2.3 MySQL Setup.............................................. 26 3 Node Installation 28 3.1 Overview................................................. 28 3.2 KVM Node Installation......................................... 29 3.3 LXD Node Installation.......................................... 36 3.4 vCenter Node Installation........................................ 38 3.5 Verify your Installation.......................................... 47 4 Authentication Setup 54
    [Show full text]
  • Anton Priadko
    Anton Priadko CONTACT [email protected] http://ua.linkedin.com/in/antonpriadko https://github.com/d-ark +38095 35 36 571 skype: antonpriadko OBJECTIVE Looking for a position of a Ruby developer. Utilizing existing experience, increasing it and improving professional skills. Industrious attitude to work, responsibility and readiness to learn are present. WORK EXPERIENCE Glomex GmbH Jun 2016 — Dec 2016 Senior Ruby developer Developing a huge, high-loaded service for video exchange. The platform has micro-service architecture, and is expected to be highly scalable. Instruments and technologies: Ruby, Padrino (mini web-framework), DynamoDB, Elasticsearch, AWS Services (Cloudformation, Codedeploy, SQS, SNS, ApiGateway, etc.), puppet, travis. Buynando Technologies Ltd. Oct 2015 — Jun 2016 Senior Ruby developer Developing an advertising platform for internal ads on web-stores. The platform has algorithmic background, complex structure and is supposed to be high-loaded. Unfortunately project was closed. It runs in production for one local Israel web-store only. Instruments and technologies: Ruby, Rails, Cuba (ruby mini-framework), Redis, Elasticsearch, algorithms, TDD, RSpec. Almost all the time (except 1 month) i was the only developer on this project. R&R Innovation Dec 2014 — Oct 2015 Ruby developer & Team leader Worked in group of 3 Ruby developers and became team leader of it in June 2015. Projects participated: 1. "Contextual player". Not in production yet. Mobile+web application which allows you listen music, which is the most suitable right now for you. Based on different "sensors", like time of day, weather or current activity. It's mostly mobile application, but it works with HTTP API, and has a web builder for creating your own scenarios.
    [Show full text]
  • Jelastic Customer Presentation
    JELASTIC PLATFORM-AS-INFRASTRUCTURE Jelastic provides enterprise cloud software that redefines the economics of cloud deployment and management. We deliver Platform-as-Infrastructure: bringing together the flexibility of IaaS and the ease of use of PaaS in a turnkey package for enterprises, hosting service providers and developers. And we do this at a fraction of the cost of existing virtualized environments. 2 PROVEN TECHNOLOGY Jelastic technology is proven in high-performance environments across the world. Our software is used by over 35 telcos, enterprises and hosting service providers with over 120,000+ developer trials worldwide. 3 JELASTIC ARCHITECTURE Cluster 4 FUNCTIONAL ARCHITECTURE Jelastic supports and interconnects many standard solutions and stacks. It’s like a bridge between applications for cloud automation. 5 FEATURE OVERVIEW ENTERPRISE/OEM HOSTING SERVICE PROVIDERS DEVELOPERS & ISVs Fastest time-to-cloud Turnkey hosting Any app deployed in deployment environment seconds with one-click Single point of Maximum application No code changes - no management density proprietary APIs Replication, high- Instant load balancing Auto-scaling: horizontal availability, security and scalability and vertical Global app support – Choice of popular new and legacy app servers, databases World’s first automatic vertical scaling $100 per month Revenue share Only pay for per active server per active customer resources used 6 CLOUD MANAGEMENT Jelastic’s cluster admin panel provides a consolidated view of your cloud resources • Add servers to
    [Show full text]
  • Deploying and Monitoring Ruby on Rails a Practical Guide
    Mit hotfixes von Carsten Bormann 2011-03-05 + 2013-02-28 Deploying and Monitoring Ruby on Rails A practical guide Mathias Meyer and Jonathan Weiss, 25.05.2009 Danke! Peritor GmbH Mashed up with... 2011-03-05 Deployment/Scaling/ Caching/Debugging jan krutisch mindmatters gmbh&co. kg [email protected] http://mindmatters.de Deployment Real artists ship! Komponenten client (Browser) rails database client Heute: (Browser) ➔ railsthin mongrel (∨database unicorn) mongrel ist schnell apache ist schneller client webserver rails Dateisystem public/ database rails ist nicht threadsafe client rails webserver rails database Dateisystem rails public/ webserver rails webserver rails oldschool: CGI / SCGI / FastCGI newschool: http mongrel versus... mod_proxy_balancer (in Apache/nginx/lighttpd) oder ein richtiger proxy oder ein richtiger balancer Varnish HAProxy, Squid, etc. true school: passenger Apache-Modul client rails webserver rails database rails Dateisystem public/ mod_passenger automagisch. it just works. http://modrails.com Infrastructure Infrastructure 5 Simple Rails Setup One Rails instance handles all requests Rails is single-threaded: There is only one concurrent request 6 Rails Setup 7 Rails Setup 8 Typical Rails Setup •! A load-balancer distributes the incoming requests •! Some load-balancers will deliver static requests themselves •! Several Rails instances handle all requests •! Number of concurrent requests equals number of Rails instances 9 Rails Setup Options 10 Deployment Questions Apache? Pound? mod_proxy_balancer? FastCGI? Mongrel? Proxy? Load-balancer? Nginx? mod_rails? Ebb? HA-Proxy? Reverse Proxy? Swiftiply? Phusion Passenger? Thin? Pen? Rails Application Server? Lighttpd? 11 What we are going to cover today Rails Application Server Proxy/Web Server •! FastCGI •! Apache2 •! Mongrel •! Nginx •! mod_rails / Phussion Passenger •! Lighttpd •! JRuby + Glassfish & Co.
    [Show full text]
  • Gunicorn Documentation Release 19.10.0
    Gunicorn Documentation Release 19.10.0 Benoit Chesneau Nov 23, 2019 Contents 1 Features 3 2 Contents 5 2.1 Installation................................................5 2.2 Running Gunicorn............................................7 2.3 Configuration Overview.........................................9 2.4 Settings.................................................. 10 2.5 Instrumentation.............................................. 28 2.6 Deploying Gunicorn........................................... 29 2.7 Signal Handling............................................. 35 2.8 Custom Application........................................... 37 2.9 Design.................................................. 38 2.10 FAQ.................................................... 41 2.11 Community................................................ 44 2.12 Changelog................................................ 44 Index 69 i ii Gunicorn Documentation, Release 19.10.0 Website http://gunicorn.org Source code https://github.com/benoitc/gunicorn Issue tracker https://github.com/benoitc/gunicorn/issues IRC #gunicorn on Freenode Usage questions https://github.com/benoitc/gunicorn/issues Gunicorn ‘Green Unicorn’ is a Python WSGI HTTP Server for UNIX. It’s a pre-fork worker model ported from Ruby’s Unicorn project. The Gunicorn server is broadly compatible with various web frameworks, simply implemented, light on server resources, and fairly speedy. Contents 1 Gunicorn Documentation, Release 19.10.0 2 Contents CHAPTER 1 Features • Natively supports WSGI, Django, and
    [Show full text]
  • Linh Chau Enterprise Software Architect
    Linh Chau Enterprise Software Architect/Senior Software Engineer Current Location: Austin, TX Email: [email protected] Personal public code repository: https://bitbucket.org/linhchauatl/ PROFESSIONAL QUALIFICATIONS • Twenty three years working experience as Software Developer (three years in Asia, two years in Germany and eighteen years in the United States). • Eighteen years experience of team work and leadership with local and distributed groups in Germany, United States, Japan, France, China, etc. • Eighteen years of intensive experience in configuration management, source code control, version configuration. • Twenty one years experience of Software development using OO methodologies, OOA, OOD, Design Patterns, UML visual design with Rational Rose, Agile, XP. • Good communication skills, both written and verbal. • Sixteen years experience with Enterprise Production Systems (PDM, PLM, CRM, and ERP) written in Java and Ruby. SKILLS: Operating Systems Mac OS X, iOS, Linux (RedHat, CentOS, Ubuntu, Mint) Languages Ruby, C++, C, Java, Go, Elixir, Rust, javascript UI Technologies HTML, CSS, HAML, ERB, Slim, Ajax, jQuery, ReactJS Frameworks Rails, Sinatra Web servers & App Apache, Nginx, Unicorn, Puma, Passenger, Mongrel, lighttpd, Tomcat, servers JRun, WebLogic, WebSphere, JBoss Databases MySQL, PostgreSQL, MongoDB, Oracle, DynamoDB, SQL Server Methodology Agile, Scrum, BDD, TDD, RUP, XP (Extreme Programming), OOAD, Design Patterns Tools & Utilities Git, docker, AWS services (EC2, S3, ELB, RDS, DynamoDB, ASG, Route53, SQS, SNS …etc…),
    [Show full text]
  • The Pyramid Web Application Development Framework Version 1.3.4
    The Pyramid Web Application Development Framework Version 1.3.4 Chris McDonough Contents Front Matteri Copyright, Trademarks, and Attributions iii Typographical Conventionsv Author Introduction vii I Narrative Documentation1 1 Pyramid Introduction3 2 Installing Pyramid 21 3 Application Configuration 27 4 Creating Your First Pyramid Application 31 5 Creating a Pyramid Project 37 6 Startup 61 7 Request Processing 65 8 URL Dispatch 71 9 Views 95 10 Renderers 105 11 Templates 119 12 View Configuration 133 13 Static Assets 151 14 Request and Response Objects 161 15 Sessions 169 16 Using Events 177 17 Environment Variables and .ini File Settings 181 18 Logging 193 19 PasteDeploy Configuration Files 201 20 Command-Line Pyramid 205 21 Internationalization and Localization 223 22 Virtual Hosting 241 23 Unit, Integration, and Functional Testing 245 24 Resources 253 25 Much Ado About Traversal 265 26 Traversal 273 27 Security 285 28 Combining Traversal and URL Dispatch 297 29 Using Hooks 307 30 Pyramid Configuration Introspection 329 31 Extending An Existing Pyramid Application 343 32 Advanced Configuration 349 33 Extending Pyramid Configuration 357 34 Thread Locals 365 35 Using the Zope Component Architecture in Pyramid 369 II Tutorials 375 36 ZODB + Traversal Wiki Tutorial 377 37 SQLAlchemy + URL Dispatch Wiki Tutorial 427 38 Converting a repoze.bfg Application to Pyramid 485 39 Running a Pyramid Application under mod_wsgi 489 III API Reference 493 40 pyramid.authorization 495 41 pyramid.authentication 497 42 pyramid.chameleon_text 503 43 pyramid.chameleon_zpt
    [Show full text]