pythonDjango
为了与时俱进,工作闲余开始研究Python,刚一接触就被Python这“优雅”的语法吸引住!后来接触到了Django,虽然还没有太深入的研究,但对这种新概念的WEB开发很感兴趣,决定尝试用它代替Java开发小的后台程序,边用边学吧!
注:本篇只介绍基础搭建过程,不负责讲解,因为刚接触Python我也不懂!
一、SAE使用的Python环境版本
Python2.7Django1.27 / 1.4 / 1.5
本地版本要确定好,需要用到其他的预装模块也要确定好。
(我一开始使用了高版本的Python和Django,结果出现了一大堆莫名其妙的错误。)
二、SAE注册、配置
注册、新建应用略,新建完成之后在“代码管理”中创建一个代码版本,SAE允许有多个版本的代码存在,可以互相切换。SAE通过SVN来管理Python源代码,页面的最下面有源代码的SVN地址,是“https://svn.sinaapp.com/”这样的格式,SVN账户密码分别为安全邮箱、安全密码
SVN客户端下载地址http://tortoisesvn.net/downloads.html
根目录是以代码版本为区分,应该只有一个标号为“1”的文件夹,其中只有:config.yaml,index.wsgi两个文件。在“1”文件夹下创建Django项目,命令行中输入:
django-admin.py startproject
这里会产生两级以你APP命名的路径,将子目录及manage.py拷贝出来,变为一级目录此时的根目录有config.yaml、index.wsgi、manage.py、
三、修改config.yaml、index.wsgi的内容:
config.yaml:name: version: 1libraries: - name: "django" version: "1.5"#我使用的是Django1.5
index.wsgi:
import os import django.core.handlers.wsgiimport saeos.environ['DJANGO_SETTINGS_MODULE'] = '.settings'application = sae.create_wsgi_app(django.core.handlers.wsgi.WSGIHandler())
四、调试Django
建议使用pycharm作为IDE来开发,非常方便。
下载地址:http://www.jetbrains.com/pycharm/
安装SAE在本机的模拟环境。
下载地址:https://github.com/sinacloud/sae-python-dev-guide.git
在dev_server中执行python setup.py install如果出现“No module name setuptools”,说明缺少setuptools
下载地址:https://bootstrap.pypa.io/ez_setup.py
把它保存下来并执行以下,它会自动安装。
修改setting.py中的数据库链接,添加并修改如下代码:
import os.pathfrom os import environdebug = not environ.get("APP_NAME", "")if debug:#LOCAL 当代码运行在本地的时候,链接本地数据库,自行配置 MYSQL_DB = 'app_saepy' MYSQL_USER = 'root' MYSQL_PASS = 'admin' MYSQL_HOST_M = '127.0.0.1' MYSQL_HOST_S = '127.0.0.1' MYSQL_PORT = '3306'else:#SAE 当代码运行在云平台的时候,链接云数据库,链接用的参数都在sae.const里面 import sae.const MYSQL_DB = sae.const.MYSQL_DB MYSQL_USER = sae.const.MYSQL_USER MYSQL_PASS = sae.const.MYSQL_PASS MYSQL_HOST_M = sae.const.MYSQL_HOST MYSQL_HOST_S = sae.const.MYSQL_HOST_S MYSQL_PORT = sae.const.MYSQL_PORTDATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': MYSQL_DB, 'USER': MYSQL_USER, 'PASSWORD': MYSQL_PASS, 'HOST': MYSQL_HOST_M, 'PORT': MYSQL_PORT, }}
为了测试我们开放Django内置的admin,修改urls.py和setting.py。
在本地通过命令启动服务,或者通过PyCharm启动
manage.py runserver 8000
应该可以通过localhost:8000来访问Django程序了。
注意SAE的MySQL貌似出于安全考虑,不允许用Navicat之类的工具访问。使用syncdb命令同步SAE的数据库也比较麻烦,解决方案一般是在本地用syncdb命令,然后将本地数据库转存为SQL文件,再在SAE的MySQL上执行,这样会方便很多。(使用SAE的MySQL之前,记得需要在“服务管理”中初始化数据库。)
通过SVN上传已经本地配置好的Django项目,不出意外

INNODBは、レドログと非論的なものを使用して、データの一貫性と信頼性を確保しています。 1.レドログは、クラッシュの回復とトランザクションの持続性を確保するために、データページの変更を記録します。 2.Undologsは、元のデータ値を記録し、トランザクションロールバックとMVCCをサポートします。

説明コマンドのキーメトリックには、タイプ、キー、行、および追加が含まれます。 1)タイプは、クエリのアクセスタイプを反映しています。値が高いほど、constなどの効率が高くなります。 2)キーは使用されているインデックスを表示し、nullはインデックスがないことを示します。 3)行はスキャンされた行の数を推定し、クエリのパフォーマンスに影響します。 4)追加の情報を最適化する必要があるというFilesortプロンプトを使用するなど、追加情報を提供します。

Temporaryを使用すると、MySQLクエリに一時テーブルを作成する必要があることが示されています。これは、異なる列、またはインデックスされていない列を使用して順番に一般的に見られます。インデックスの発生を回避し、クエリを書き直し、クエリのパフォーマンスを改善できます。具体的には、expliect出力に使用を使用する場合、MySQLがクエリを処理するために一時テーブルを作成する必要があることを意味します。これは通常、次の場合に発生します。1)個別またはグループビーを使用する場合の重複排除またはグループ化。 2)Orderbyに非インデックス列が含まれているときに並べ替えます。 3)複雑なサブクエリを使用するか、操作に参加します。最適化方法には以下が含まれます。1)OrderbyとGroupB

MySQL/INNODBは、4つのトランザクション分離レベルをサポートしています。 1.ReadunCommittedは、知らないデータを読み取ることができます。 2。読み込みは汚い読み取りを回避しますが、繰り返しのない読みが発生する可能性があります。 3. RepeatablerEadはデフォルトレベルであり、汚い読み取りと非回復不可能な読みを避けますが、幻の読み取りが発生する可能性があります。 4. Serializableはすべての並行性の問題を回避しますが、同時性を低下させます。適切な分離レベルを選択するには、データの一貫性とパフォーマンス要件のバランスをとる必要があります。

MySQLは、Webアプリケーションやコンテンツ管理システムに適しており、オープンソース、高性能、使いやすさに人気があります。 1)PostgreSQLと比較して、MySQLは簡単なクエリと高い同時読み取り操作でパフォーマンスが向上します。 2)Oracleと比較して、MySQLは、オープンソースと低コストのため、中小企業の間でより一般的です。 3)Microsoft SQL Serverと比較して、MySQLはクロスプラットフォームアプリケーションにより適しています。 4)MongoDBとは異なり、MySQLは構造化されたデータおよびトランザクション処理により適しています。

MySQLインデックスのカーディナリティは、クエリパフォーマンスに大きな影響を及ぼします。1。高いカーディナリティインデックスは、データ範囲をより効果的に狭め、クエリ効率を向上させることができます。 2。低カーディナリティインデックスは、完全なテーブルスキャンにつながり、クエリのパフォーマンスを削減する可能性があります。 3。ジョイントインデックスでは、クエリを最適化するために、高いカーディナリティシーケンスを前に配置する必要があります。

MySQL学習パスには、基本的な知識、コアの概念、使用例、最適化手法が含まれます。 1)テーブル、行、列、SQLクエリなどの基本概念を理解します。 2)MySQLの定義、作業原則、および利点を学びます。 3)インデックスやストアドプロシージャなどの基本的なCRUD操作と高度な使用法をマスターします。 4)インデックスの合理的な使用や最適化クエリなど、一般的なエラーのデバッグとパフォーマンス最適化の提案に精通しています。これらの手順を通じて、MySQLの使用と最適化を完全に把握できます。

MySQLの実際のアプリケーションには、基本的なデータベース設計と複雑なクエリの最適化が含まれます。 1)基本的な使用法:ユーザー情報の挿入、クエリ、更新、削除など、ユーザーデータの保存と管理に使用されます。 2)高度な使用法:eコマースプラットフォームの注文や在庫管理など、複雑なビジネスロジックを処理します。 3)パフォーマンスの最適化:インデックス、パーティションテーブル、クエリキャッシュを使用して合理的にパフォーマンスを向上させます。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

SecLists
SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

DVWA
Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

SAP NetWeaver Server Adapter for Eclipse
Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。
