| 両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン | 
| python:emmett [2024/06/23 18:55]  – [RuntimeError: No driver of supported ones ('psycopg2', 'pg8000') is available]  ともやん | python:emmett [2024/06/24 08:03] (現在)  – [参考文献]  ともやん | 
|---|
| (.venv) <font color="#0087FF"><b>$</b></font> <font color="#26A269">pip</font> install emmett | (.venv) <font color="#0087FF"><b>$</b></font> <font color="#26A269">pip</font> install emmett | 
| </pre></html></WRAP> | </pre></html></WRAP> | 
| <WRAP color_result_long><html><pre> | <WRAP color_result_hlong><html><pre> | 
| Collecting emmett | Collecting emmett | 
| Downloading emmett-2.5.11-py3-none-any.whl.metadata (4.8 kB) | Downloading emmett-2.5.11-py3-none-any.whl.metadata (4.8 kB) | 
| Successfully installed click-8.1.7 emmett-2.5.11 emmett-crypto-0.6.0 granian-1.4.4 pendulum-3.0.0 pyDAL-17.3 python-dateutil-2.9.0.post0 python-rapidjson-1.17 pyyaml-6.0.1 renoir-1.7.1 severus-1.3.0 six-1.16.0 time-machine-2.14.1 tzdata-2024.1 uvloop-0.19.0 | Successfully installed click-8.1.7 emmett-2.5.11 emmett-crypto-0.6.0 granian-1.4.4 pendulum-3.0.0 pyDAL-17.3 python-dateutil-2.9.0.post0 python-rapidjson-1.17 pyyaml-6.0.1 renoir-1.7.1 severus-1.3.0 six-1.16.0 time-machine-2.14.1 tzdata-2024.1 uvloop-0.19.0 | 
| </pre></html></WRAP> | </pre></html></WRAP> | 
|  | </WRAP> | 
|  |  | 
|  | ===== 技術情報 ===== | 
|  |  | 
|  | ==== Emmett は ASGI ではなく RSGI で動作する...🤔 ==== | 
|  | Granian HTTPサーバーはASGI 代替プロトコルRSGI(Rust Server Gateway Interface)を実装してて、Emmett 2.5 で使用されるデフォルトのプロトコル、uvicorn への依存は削除されてる🤔\\ | 
|  | コードを変更することなく、Webアプリケーションのパフォーマンスが約 50%  向上してる😍\\ | 
|  | [[https://emmett.sh/docs/2.5.x/upgrading|Upgrading to newer releases | Emmett framework]]\\ | 
|  | [[https://github.com/emmett-framework/granian/blob/master/docs/spec/RSGI.md|RSGI Specification - granian/docs/spec/RSGI.md at master · emmett-framework/granian]]\\ | 
|  |  | 
|  | ==== データベース URL に指定可能な文字列の例...🤔 ==== | 
|  | 公式: [[https://pydal.readthedocs.io/en/latest/|Welcome to pyDAL’s API documentation! — pyDAL 17.11 documentation]]\\ | 
|  |  | 
|  | Emmett は内部で [[http://www.web2py.com/|web2py]] Web フレームワーク 由来の pyDAL を利用するので、そのドキュメントに記載がある😉\\ | 
|  | <WRAP color_term> | 
|  | <WRAP color_mincode><code python> | 
|  | 'sqlite://test.db' | 
|  | 'spatialite://test.db' | 
|  | 'sqlite:memory' | 
|  | 'spatialite:memory' | 
|  | 'jdbc:sqlite://test.db' | 
|  | 'mysql://root:none@localhost/test' | 
|  | 'postgres://mdipierro:password@localhost/test' | 
|  | 'postgres:psycopg2://mdipierro:password@localhost/test' | 
|  | 'postgres:pg8000://mdipierro:password@localhost/test' | 
|  | 'jdbc:postgres://mdipierro:none@localhost/test' | 
|  | 'mssql://web2py:none@A64X2/web2py_test' | 
|  | 'mssql2://web2py:none@A64X2/web2py_test' # alternate mappings | 
|  | 'mssql3://web2py:none@A64X2/web2py_test' # better pagination (requires >= 2005) | 
|  | 'mssql4://web2py:none@A64X2/web2py_test' # best pagination (requires >= 2012) | 
|  | 'oracle://username:password@database' | 
|  | 'firebird://user:password@server:3050/database' | 
|  | 'db2:ibm_db_dbi://DSN=dsn;UID=user;PWD=pass' | 
|  | 'db2:pyodbc://driver=DB2;hostname=host;database=database;uid=user;pwd=password;port=port' | 
|  | 'firebird://username:password@hostname/database' | 
|  | 'firebird_embedded://username:password@c://path' | 
|  | 'informix://user:password@server:3050/database' | 
|  | 'informixu://user:password@server:3050/database' # unicode informix | 
|  | 'ingres://database'  # or use an ODBC connection string, e.g. 'ingres://dsn=dsn_name' | 
|  | 'google:datastore' # for google app engine datastore (uses ndb by default) | 
|  | 'google:sql' # for google app engine with sql (mysql compatible) | 
|  | 'teradata://DSN=dsn;UID=user;PWD=pass; DATABASE=database' # experimental | 
|  | 'imap://user:password@server:port' # experimental | 
|  | 'mongodb://user:password@server:port/database' # experimental | 
|  | </code></WRAP> | 
| </WRAP> | </WRAP> | 
|  |  | 
| [[https://towardsdatascience.com/elegant-web-development-with-emmett-in-python-612ed898a71e|Elegant Web Development With Emmett In Python | by Emma Boudreau | Towards Data Science]]\\ | [[https://towardsdatascience.com/elegant-web-development-with-emmett-in-python-612ed898a71e|Elegant Web Development With Emmett In Python | by Emma Boudreau | Towards Data Science]]\\ | 
| [[https://medium.com/@pangea.ai/the-ultimate-guide-to-python-development-frameworks-2021-d5f3daad75c6|The Ultimate Guide to Python Development Frameworks 2021 | by Pangea.ai | Medium]]\\ | [[https://medium.com/@pangea.ai/the-ultimate-guide-to-python-development-frameworks-2021-d5f3daad75c6|The Ultimate Guide to Python Development Frameworks 2021 | by Pangea.ai | Medium]]\\ | 
|  | [[https://medium.com/@carlosmarcano2704/seven-alternatives-to-fastapi-to-explore-and-contribute-python-47bcd394bf31|Seven Alternatives To FastAPI To Explore and Contribute To | Python | by Carlos Armando Marcano Vargas | Medium]]\\ | 
|  |  | 
| ==== 付録 ==== | ==== 付録 ==== | 
| [[tw>tomoyan596sp/status/1804386410151223725|誰のホームページを作ってるんでしょうね...🤔 Dr. Emmett Brown 博士😅 ドッグが由来らしいPythonのEmmettフレームワーク🤔 真の非同期 Web アプリケーション フレームワークだから...😊 ASGIサーバーはRustで実装されてるGranian、weppyをforkしたEmmettは、Flaskに似てるがDjangoくらい高機能です😋]]\\ | [[tw>tomoyan596sp/status/1804386410151223725|誰のホームページを作ってるんでしょうね...🤔 Dr. Emmett Brown 博士😅 ドッグが由来らしいPythonのEmmettフレームワーク🤔 真の非同期 Web アプリケーション フレームワークだから...😊 ASGIサーバーはRustで実装されてるGranian、weppyをforkしたEmmettは、Flaskに似てるがDjangoくらい高機能です😋]]\\ | 
|  |  |