Reductus: a Stateless Python Data Reduction Service with a Browser Front End

Total Page:16

File Type:pdf, Size:1020Kb

Reductus: a Stateless Python Data Reduction Service with a Browser Front End computer programs reductus: a stateless Python data reduction service with a browser front end ISSN 1600-5767 Brian Maranville,* William Ratcliff II and Paul Kienzle NIST Center for Neutron Research, 100 Bureau Drive, Gaithersburg, MD 20899, USA. *Correspondence e-mail: [email protected] Received 24 April 2018 Accepted 23 August 2018 The online data reduction service reductus transforms measurements in experimental science from laboratory coordinates into physically meaningful quantities with accurate estimation of uncertainties from instrumental settings Edited by Th. Proffen, Oak Ridge National and properties. This reduction process is based on a few well known Laboratory, USA transformations, but flexibility in the application of the transforms and algorithms supports flexibility in experiment design, enabling a broader range Keywords: neutron reflectometry; X-ray reflectometry; data reduction; computer of measurements than a rigid reduction scheme for data. The user interface programs. allows easy construction of arbitrary pipelines from well known data transforms using a visual data flow diagram. Source data are drawn from a networked, open data repository. The Python back end uses intelligent caching to store intermediate results of calculations for a highly responsive user experience. The reference implementation allows immediate reduction of measurements as they are recorded for the three neutron reflectometry instruments at the NIST Center for Neutron Research, without the need for visiting scientists to install additional software on their own computers. 1. Motivation The transformation of raw measurements into meaningful interpretable data with attached uncertainties (data reduc- tion) is a ubiquitous task in the experimental sciences. In the case where the workflow is well established and the commu- nity is small the most direct way to accomplish this is to develop a custom application to be installed on a limited number of dedicated computers. However, at a scientific user facility a large number of visiting researchers are using the measurement tools on a part-time basis. Thus, it is necessary to make reduction capabilities widely available and flexible. In this case a web-based application is an attractive alternative to distributing dedicated installable executables. The main benefit of a web application is the almost universal accessibility to potential users. On top of this, a centralized reduction server also benefits from the ability to update the calculation code at any time without requiring all users to update their software, as well as largely eliminating the non-trivial time cost of maintaining an installable appli- cation for more than one target platform. Users can also install the service locally, much as they would if reduction were a desktop application. This allows them to access their own data and develop reduction applications for their own instrumentation. The specific implementation described herein, reductus, was developed to provide reduction for reflectometry instruments, but the system was designed to be extensible and usable for other data processing problems and work is underway to support reduction for off-specular reflectometry, small-angle 1500 https://doi.org/10.1107/S1600576718011974 J. Appl. Cryst. (2018). 51, 1500–1506 computer programs neutron scattering and triple-axis spectrometry. The approach subtract the ‘background’ signal at the corresponding incident can be adapted to any type of computational problem, but the angle from the measured reflected intensity, and then divide level of flexibility and computational complexity supported is the subtracted value by the ‘direct-beam’ measurement with driven by the needs of a data reduction engine. the same collimation. The incident angles and wavelengths of the measurements are converted to more meaningful reci- procal space Qz. The generation of error bars for the counts is 1.1. Data reduction for reflectometry based on the fact that these are drawn from a Poisson distri- Neutron reflectometry is a technique for characterizing bution, and instrumental angular and energy resolutions are surfaces, thin films and multilayers by analyzing the intensity calculated on the basis of the collimation and optics (mono- of a reflected signal relative to the incident beam. This fraction chromator) of the measurements. of number reflected/number incident is called the reflectivity, Within the application, the process is treated as a series of and it can be modeled and interpreted by using, for example, data transformations, with data flowing from one transfor- an optical matrix formalism analogous to the one used in the mation module into the next. Corrections are chained together analysis of electromagnetic reflectivity (Born & Wolf, 1959; in a data flow diagram (Sutherland, 1966), with the final data Abele`s, 1950), but where the relevant potentials arise from set saved as the result of the reduction. This yields the interactions between the neutron and nucleus, or the neutron and the internal magnetic field of the sample, rather than electromagnetism. The theory provides a prediction for the reflectivity as a function of momentum transfer (difference of momentum for incident and reflected photon or neutron, in this case). As an illustrative example, we will describe just one of the many types of reflectometry instrument setups: one with a monochromatic beam and with no polarization analysis. In order to measure this reflectivity, an apparatus is constructed such that a collimated beam (of known energy, and known angular and energetic resolution) is made incident on a planar sample, and a neutron detector is placed after the sample to record the number of neutrons that are specularly reflected (where the angle of incidence equals the angle of reflectance) in a given time. This measurement is repeated for a number of incident and reflected angles, which correspond to a range of momentum transfers, so that the results can be compared with the prediction from theory as described above. In order to calculate the reflectivity, though, we need to divide the number of reflected neutrons at each momentum transfer by the number of incident neutrons, and so we also have to measure the ‘direct-beam’ intensity separately, with no sample in the beam, with the instrument collimation set up exactly as it is for the reflection measurement. In our case, the collima- tion is controlled by the opening of two slits in the beam path before the sample position, so setting the direct beam to the same collimation just requires opening those two slits to the same position they were in during the reflected-beam measurement. We also wish to subtract spurious detection events, such as incoherent scattering from the sample holder, so we perform another set of experiments where the sample is in the beam but the detector is not placed at the specular reflection position (the angle of reflection is intentionally set to be different from the angle of incidence). These measure- Figure 1 ments we call the ‘background’. Often two background (a) Measured signal and background counts. Each color represents an independent data file from our data acquisition system, plotted against measurements are taken, where the angle is offset from the the instrument motor that controls the incident beam angle, which in this specular condition in either the positive or negative direction case is ‘sample/angle_x’. The upper curves are the signal and the lower (later labeled bg+ and bgÀ in the text and figures.) curves are the background. (b) Data flow diagram, with the left boxes for Then in the simplest case, in order to extract the physically each node representing the input data and the right boxes representing output. The experimentalist can select the signal, Æbackground and slit meaningful reflectivity (number of neutrons reflected/number normalization for the load nodes, producing the reduced data as the of neutrons incident for a given momentum transfer) we first output from the divide node. (c) Reduced data in physical coordinates. J. Appl. Cryst. (2018). 51, 1500–1506 Brian Maranville et al. reductus 1501 computer programs estimated reflectivity versus the momentum transfer, Qz (see Once connected to the server, the web client requests a Fig. 1). listing of the public data stores, the available reduction steps Users must first identify the data files that will be read as the and a set of predefined template diagrams representing the inputs of the ‘load’ modules at the left of the diagram; then usual reduction procedures for the data. The menus and further individual modules may have control parameters, such default options are populated on the basis of this information. as a scale factor for a scaling module (needed if there is a beam attenuator in one measurement but not in the others, for 2.1. Data flow diagram example). The measured reflectivity is the output of the The user interacts with the data flow diagram in order to ‘divide’ module at the right, in physical coordinates with navigate the reduction chain: by clicking on a module within instrument-specific details removed. the diagram to bring up the parameters panel for that module, Other, more complicated setups are in common use for or by clicking on the input (left) or output (right) terminals to measuring reflectivity, including polychromatic sources display calculation results. Changes made in the parameters (multiple incident energies), polarized-beam components etc., panel are by default immediately applied to the active tem- and correction modules are included for many of these cases plate, though by un-checking the auto-accept parameters so that the user can construct a reduction pipeline that box in the data menu an additional confirmation step matches their experimental setup. (pressing the ‘accept’ button in the panel) can be imposed to avoid accidental changing of the active template. In that context, if a user makes a parameter change but then selects a different module without first pressing ‘accept’, that change is 2. Web interface lost. The user interface for reductus is a JavaScript application that The ‘clear’ button removes all values from the active runs in a browser.
Recommended publications
  • Interfacing Apache HTTP Server 2.4 with External Applications
    Interfacing Apache HTTP Server 2.4 with External Applications Jeff Trawick Interfacing Apache HTTP Server 2.4 with External Applications Jeff Trawick November 6, 2012 Who am I? Interfacing Apache HTTP Server 2.4 with External Applications Met Unix (in the form of Xenix) in 1985 Jeff Trawick Joined IBM in 1990 to work on network software for mainframes Moved to a different organization in 2000 to work on Apache httpd Later spent about 4 years at Sun/Oracle Got tired of being tired of being an employee of too-huge corporation so formed my own too-small company Currently working part-time, coding on other projects, and taking classes Overview Interfacing Apache HTTP Server 2.4 with External Applications Jeff Trawick Huge problem space, so simplify Perspective: \General purpose" web servers, not minimal application containers which implement HTTP \Applications:" Code that runs dynamically on the server during request processing to process input and generate output Possible web server interactions Interfacing Apache HTTP Server 2.4 with External Applications Jeff Trawick Native code plugin modules (uhh, assuming server is native code) Non-native code + language interpreter inside server (Lua, Perl, etc.) Arbitrary processes on the other side of a standard wire protocol like HTTP (proxy), CGI, FastCGI, etc. (Java and \all of the above") or private protocol Some hybrid such as mod fcgid mod fcgid as example hybrid Interfacing Apache HTTP Server 2.4 with External Applications Jeff Trawick Supports applications which implement a standard wire protocol, no restriction on implementation mechanism Has extensive support for managing the application[+interpreter] processes so that the management of the application processes is well-integrated with the web server Contrast with mod proxy fcgi (pure FastCGI, no process management) or mod php (no processes/threads other than those of web server).
    [Show full text]
  • Python for Bioinformatics, Second Edition
    PYTHON FOR BIOINFORMATICS SECOND EDITION CHAPMAN & HALL/CRC Mathematical and Computational Biology Series Aims and scope: This series aims to capture new developments and summarize what is known over the entire spectrum of mathematical and computational biology and medicine. It seeks to encourage the integration of mathematical, statistical, and computational methods into biology by publishing a broad range of textbooks, reference works, and handbooks. The titles included in the series are meant to appeal to students, researchers, and professionals in the mathematical, statistical and computational sciences, fundamental biology and bioengineering, as well as interdisciplinary researchers involved in the field. The inclusion of concrete examples and applications, and programming techniques and examples, is highly encouraged. Series Editors N. F. Britton Department of Mathematical Sciences University of Bath Xihong Lin Department of Biostatistics Harvard University Nicola Mulder University of Cape Town South Africa Maria Victoria Schneider European Bioinformatics Institute Mona Singh Department of Computer Science Princeton University Anna Tramontano Department of Physics University of Rome La Sapienza Proposals for the series should be submitted to one of the series editors above or directly to: CRC Press, Taylor & Francis Group 3 Park Square, Milton Park Abingdon, Oxfordshire OX14 4RN UK Published Titles An Introduction to Systems Biology: Statistical Methods for QTL Mapping Design Principles of Biological Circuits Zehua Chen Uri Alon
    [Show full text]
  • Mastering Flask Web Development Second Edition
    Mastering Flask Web Development Second Edition Build enterprise-grade, scalable Python web applications Daniel Gaspar Jack Stouffer BIRMINGHAM - MUMBAI Mastering Flask Web Development Second Edition Copyright © 2018 Packt Publishing All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews. Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the author, nor Packt Publishing or its dealers and distributors, will be held liable for any damages caused or alleged to have been caused directly or indirectly by this book. Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information. Commissioning Editor: Amarabha Banerjee Acquisition Editor: Devanshi Doshi Content Development Editor: Onkar Wani Technical Editor: Diksha Wakode Copy Editor: Safis Editing Project Coordinator: Sheejal Shah Proofreader: Safis Editing Indexer: Rekha Nair Graphics: Alishon Mendonsa Production Coordinator: Aparna Bhagat First published: September 2015 Second Edition: October 2018 Production reference: 1301018 Published by Packt Publishing Ltd. Livery Place 35 Livery Street Birmingham B3 2PB, UK. ISBN 978-1-78899-540-5 www.packtpub.com mapt.io Mapt is an online digital library that gives you full access to over 5,000 books and videos, as well as industry leading tools to help you plan your personal development and advance your career.
    [Show full text]
  • Uwsgi Documentation Release 2.0
    uWSGI Documentation Release 2.0 uWSGI Jun 17, 2020 Contents 1 Included components (updated to latest stable release)3 2 Quickstarts 5 3 Table of Contents 33 4 Tutorials 303 5 Articles 343 6 uWSGI Subsystems 375 7 Scaling with uWSGI 457 8 Securing uWSGI 485 9 Keeping an eye on your apps 503 10 Async and loop engines 511 11 Web Server support 525 12 Language support 541 13 Other plugins 629 14 Broken/deprecated features 633 15 Release Notes 643 16 Contact 741 17 Commercial support 743 18 Donate 745 19 Sponsors 747 20 Indices and tables 749 i Python Module Index 751 Index 753 ii uWSGI Documentation, Release 2.0 The uWSGI project aims at developing a full stack for building hosting services. Application servers (for various programming languages and protocols), proxies, process managers and monitors are all implemented using a common api and a common configuration style. Thanks to its pluggable architecture it can be extended to support more platforms and languages. Currently, you can write plugins in C, C++ and Objective-C. The “WSGI” part in the name is a tribute to the namesake Python standard, as it has been the first developed plugin for the project. Versatility, performance, low-resource usage and reliability are the strengths of the project (and the only rules fol- lowed). Contents 1 uWSGI Documentation, Release 2.0 2 Contents CHAPTER 1 Included components (updated to latest stable release) The Core (implements configuration, processes management, sockets creation, monitoring, logging, shared memory areas, ipc, cluster membership and the uWSGI Subscription Server) Request plugins (implement application server interfaces for various languages and platforms: WSGI, PSGI, Rack, Lua WSAPI, CGI, PHP, Go .
    [Show full text]
  • An Analysis of Python's Topics, Trends, and Technologies Through Mining Stack Overflow Discussions
    1 An Analysis of Python’s Topics, Trends, and Technologies Through Mining Stack Overflow Discussions Hamed Tahmooresi, Abbas Heydarnoori, and Alireza Aghamohammadi F Abstract—Python is a popular, widely used, and general-purpose pro- (LDA) [3] to categorize discussions in specific areas such gramming language. In spite of its ever-growing community, researchers as web programming [4], mobile application development [5], have not performed much analysis on Python’s topics, trends, and tech- security [6], and blockchain [7]. However, none of them has nologies which provides insights for developers about Python commu- focused on Python. In this study, we shed light on the nity trends and main issues. In this article, we examine the main topics Python’s main areas of discussion through mining 2 461 876 related to this language being discussed by developers on one of the most popular Q&A websites, Stack Overflow, as well as temporal trends posts, from August 2008 to January 2019, using LDA based through mining 2 461 876 posts. To be more useful for the software topic modeling . We also analyze the temporal trends of engineers, we study what Python provides as the alternative to popular the extracted topics to find out how the developers’ interest technologies offered by common programming languages like Java. is changing over the time. After explaining the topics and Our results indicate that discussions about Python standard features, trends of Python, we investigate the technologies offered web programming, and scientific programming 1 are the most popular by Python, which are not properly revealed by the topic areas in the Python community.
    [Show full text]
  • Master Thesis
    MASTER THESIS TITLE: Analysis and evaluation of high performance web servers MASTER DEGREE: Master in Science in Telecommunication Engineering & Management AUTHOR: Albert Hidalgo Barea DIRECTOR: Rubén González Blanco SUPERVISOR: Roc Meseguer Pallarès DATE: July 13 th 2011 Title: Analysis and evaluation of high performance web servers Author: Albert Hidalgo Barea Director: Rubén González Blanco Supervisor: Roc Meseguer Pallarès Date: July 13 th 2011 Overview Web servers are a very important tool when providing users with requested content on the Internet. Usage of the Internet is growing day-by-day, making those software applications essential. In the first part of the thesis, the web server world will be introduced to the reader, by giving a brief explanation of some of the available technologies as well as different dynamic protocols. Also, as there are different web servers available in the market, during this report it will be chosen the best performing ones. So, it will be presented a comparative chart between all of them in order to show the most important features of each one. Defining the scenario and the test cases is mandatory. For this reason, it is described the used hardware and software used to perform those benchmarks. The hardware is maintained equal during the whole test process, in order to let web server’s performance gaps to their internal architecture. Operating system and benchmarking tools are also described and given some examples. Furthermore, test cases are chosen to show some strengths and weakness of each web server, enabling us to compare the relative performance between them. Finally, the last part of the report consists on presenting the obtained results during the benchmark process, as well as presenting some lessons learned during the curse of the whole thesis, summing-up with some conclusions.
    [Show full text]
  • Deploying Python Applications with Httpd
    Introduction Generalities Brass Tacks Configuration/deployment example For Further Study Deploying Python Applications with httpd Jeff Trawick http://emptyhammock.com/ [email protected] April 14, 2015 ApacheCon US 2015 Introduction Generalities Brass Tacks Configuration/deployment example For Further Study Get these slides... http://emptyhammock.com/projects/info/slides.html Introduction Generalities Brass Tacks Configuration/deployment example For Further Study Revisions Get a fresh copy of the slide deck before using any recipes. If I find errors before this deck is marked as superseded on the web page, I'll update the .pdf and note important changes here. (And please e-mail me with any problems you see.) Introduction Generalities Brass Tacks Configuration/deployment example For Further Study Who am I? • My day jobs over the last 25 years have included work on several products which were primarily based on or otherwise included Apache HTTP Server as well as lower-level networking products and web applications. My primary gig now is with a Durham, North Carolina company which specializes in Django application development. • I've been an httpd committer since 2000. A general functional area of Apache HTTP Server that I have helped maintain over the years (along with many others) is the interface with applications running in different processes, communicating with the server using CGI, FastCGI, or SCGI protocols. Introduction Generalities Brass Tacks Configuration/deployment example For Further Study mod wsgi vs. mod proxy-based solution I won't cover mod wsgi in this talk. I currently use it for a couple of applications but am migrating away from it, primarily for these reasons: • mod proxy supports more separation between web server and application • Supports moving applications around or running applications in different modes for debugging without changing web server • Supports drastic changes to the web front-end without affecting application • No collision between software stack in web server vs.
    [Show full text]
  • Comparative Study on Python Web Frameworks: Flask and Django
    Devndra Ghimire Comparative study on Python web frameworks: Flask and Django Metropolia University of Applied Sciences Bachelor of Engineering Media Engineering Bachelor’s Thesis 5 May 2020 Abstract Devndra Ghimire Author(s) Comparative study on Python web frameworks: Flask and Title Django. Number of Pages 37 pages + 0 appendices Date 5 May 2010 Degree Bachelor of Engineering Degree Programme Media Engineering Specialisation option Software Engineering Instructor(s) Kari Salo, Senior Lecturer The purpose of the thesis was to the study the various features, advantages, and the limita- tion of two web development frameworks for Python programming language. It aims to com- pare the usage of Django and Flask frameworks from a novice point of view. The theoretical part of the thesis presents the various types of programming languages and web technolo- gies. In the practical part, however, the study is divided into two parts, each part observing the respective web application framework. In order to perform the comparison, a social network and eCommerce like application was built for Flask and Django respectively. The comparison was started by developing the social network application first with Flask and finished with the e-commerce application using Django. Python programing language, SQLite database for the backend and HTML, JavaS- cript, and Ajax were used for the frontend technology. At the end of the project, both appli- cations were deployed to the cloud platform called Heroku. After the comparison, it was found that the most significant advantages of Flask were that it provides simplicity, flexibility, fine-grained control and quick and easy to learn. On the other hand, Django was easy to work with because of its extensive features and support for librar- ies.
    [Show full text]
  • Visualization and Analysis of High-Throughput Dose-Response Datasets Supplementary Material
    Thunor: Visualization and Analysis of High-Throughput Dose-Response Datasets Supplementary Material Text S1: Extended description of Thunor implementation Thunor Core/Thunor Web Thunor software is split into Thunor Core and Thunor Web (Fig. S1). Thunor Core provides core functionality, including structuring dose–response data and curve fit parameters using the Pandas library, automatically calculating DIP rate, fitting dose–response curve models, and plotting. For data scientists, Thunor Core can be used as a standalone Python library on the command line, integrated into other processing pipelines, or utilized within Jupyter notebooks (jupyter.org), as shown in the Thunor Core online tutorial (part of the Thunor Core documentation, core.thunor.net). A list of key Python software libraries used by Thunor is included below. Name Role URL Bootstrap Front end layout getbootstrap.com Certbot TLS certificate provisioning certbot.eff.org Datatables Interactive web tables datatables.net Django Web application framework djangoproject.com Docker Application containers docker.com Docker Compose Multi-container orchestration docs.docker.com/compose Docker Machine Remote control and deployment docs.docker.com/machine jQuery Front end interactivity jquery.com Nginx Web server nginx.org Numpy Numerical operations numpy.org Pandas Data manipulation pandas.pydata.org Plotly Graph drawing plot.ly PostgreSQL Relational database postgresql.org Redis Cache redis.io Scipy Curve fitting, statistics scipy.org Sentry Error aggregation, logging getsentry.com uWSGI Application server uwsgi-docs.readthedocs.io Webpack Static file bundling webpack.js.org Thunor Core Thunor Core is a Python package, which can be used interactively (Python prompt or within Jupyter Notebooks) or integrated into other data processing pipelines.
    [Show full text]
  • Green Cluster of Low-Power Embedded Hardware Server Accelerators
    GREEN CLUSTER OF LOW-POWER EMBEDDED HARDWARE SERVER ACCELERATORS NAVID MOHAGHEGH A DISSERTATION SUBMITTED TO THE FACULTY OF GRADUATE STUDIES IN FULFILMENT OF THE REQUIREMENTS FOR THE DEGREE OF MASTERS OF APPLIED SCIENCE AND ENGINEERING GRADUATE PROGRAM IN COMPUTER SCIENCE AND ENGINEERING YORK UNIVERSITY, TORONTO, ONTARIO NOVEMBER 2011 Library and Archives Bibliotheque et Canada Archives Canada Published Heritage Direction du 1+1 Branch Patrimoine de I'edition 395 Wellington Street 395, rue Wellington Ottawa ON K1A0N4 Ottawa ON K1A 0N4 Canada Canada Your file Votre reference ISBN: 978-0-494-88639-7 Our file Notre reference ISBN: 978-0-494-88639-7 NOTICE: AVIS: The author has granted a non­ L'auteur a accorde une licence non exclusive exclusive license allowing Library and permettant a la Bibliotheque et Archives Archives Canada to reproduce, Canada de reproduire, publier, archiver, publish, archive, preserve, conserve, sauvegarder, conserver, transmettre au public communicate to the public by par telecommunication ou par I'lnternet, preter, telecommunication or on the Internet, distribuer et vendre des theses partout dans le loan, distrbute and sell theses monde, a des fins commerciales ou autres, sur worldwide, for commercial or non­ support microforme, papier, electronique et/ou commercial purposes, in microform, autres formats. paper, electronic and/or any other formats. The author retains copyright L'auteur conserve la propriete du droit d'auteur ownership and moral rights in this et des droits moraux qui protege cette these. Ni thesis. Neither the thesis nor la these ni des extraits substantiels de celle-ci substantial extracts from it may be ne doivent etre imprimes ou autrement printed or otherwise reproduced reproduits sans son autorisation.
    [Show full text]
  • Weblate Image Guide Weblate Stack Components
    Weblate Image Guide Version 2.16 Websoft9 Weblate is a pre-configured, ready to run image for running Weblate on Alibaba Cloud. Weblate is a free web-based translation tool with tight version control integration. It features simple and clean user interface, propagation of translations across components within a project, quality checks and automatic linking to source files. Weblate Stack Components Application Software(Weblate2.16) Weblate project directory: /data/wwwroot/weblate Weblate application directory: /data/wwwroot/weblate/weblate Weblate configuration file: /data/wwwroot/weblate/weblate/settings.py Application Server(Python2.7,virtualenv 15.0.1,django 1.11.4,uwsgi 2.0.12,nginx 1.10.3) Weblate for python Virtualenv directory: /data/wwwroot/weblate/env Nginx configuration directory: /etc/nginx/ Nginx for Weblate configuration file: /etc/nginx/sites-enabled/weblate uwsgi configuration directory: /etc/uwsgi uwsgi for weblate configuration file: /etc/uwsgi/apps-enabled/weblate.ini Database(MYSQL5.7) MySQL directory: /var/lib/mysql The default database name for Weblate: weblate Verify the Image After the installation of Image,please verify it Login on Alibaba Cloud console,get you Internet IP Address Open you Chrome or Firefox on your local PC,visit the http://Internet IP Address/ If verify successfully,you can enter the Start Installation page of this Image If no response from browser,please check the Security Group settings (https://www.alibabacloud.com/help/doc-detail/25471.htm) to ensure that port 80 is been allowed Start to use Weblate Using Chrome or Firefox to visit: http://Internet IP Address/ to start using this application.Following is the steps: 1.
    [Show full text]
  • Werkzeug Documentation (0.16.X) Release 0.16.1
    Werkzeug Documentation (0.16.x) Release 0.16.1 Pallets Feb 06, 2020 Contents 1 Getting Started 3 1.1 Installation................................................3 1.2 Transition to Werkzeug 1.0........................................5 1.3 Werkzeug Tutorial............................................6 1.4 API Levels................................................ 14 1.5 Quickstart................................................ 15 2 Serving and Testing 21 2.1 Serving WSGI Applications....................................... 21 2.2 Test Utilities............................................... 26 2.3 Debugging Applications......................................... 32 3 Reference 37 3.1 Request / Response Objects....................................... 37 3.2 URL Routing............................................... 54 3.3 WSGI Helpers.............................................. 67 3.4 Filesystem Utilities............................................ 74 3.5 HTTP Utilities.............................................. 74 3.6 Data Structures.............................................. 83 3.7 Utilities.................................................. 99 3.8 URL Helpers............................................... 106 3.9 Context Locals.............................................. 112 3.10 Middleware................................................ 115 3.11 HTTP Exceptions............................................ 121 4 Deployment 127 4.1 Application Deployment......................................... 127 5 Contributed Modules 133 5.1 Contributed
    [Show full text]