利用API创建应用有着巨大的优势,但很多时候你并不了解为何/系统设备会“崩溃”,这也是API各大厂商积极提供可用状态页面的原因。 在上周举办的SXSW的音乐节上,研讨会很大程度上都是依靠Twitter API。与会者在做报告时发生“意外”的错误现象,经盘查是因一
利用API创建应用有着巨大的优势,但很多时候你并不了解为何/系统设备会“崩溃”,这也是API各大厂商积极提供可用状态页面的原因。
在上周举办的SXSW的音乐节上,研讨会很大程度上都是依靠Twitter API。与会者在做报告时发生“意外”的错误现象,经盘查是因一个错误API导致的。前段时间,Twitter发生了宕机事件,而联合创始人Biz Stone正在参加德克萨斯州的SXSW大会。Twitter出现大规模服务中断,大量用户无论是通过桌面网页、移动网页或移动应用均无法访问网站。
我承认我不敢看Twitter的状态页面,似乎是性能部分被中断了。从上图中我们可以看到3月11号性能部分没有任何信息。
良好的API状态页面
API状态页面应该确保能与开发者沟通,包括当前的、最近的问题。API提供商应该具备以下三点:
- 透明性
- 有用性
- 主动性
其中最为重要的是透明性。如果某家公司的API出现问题了,那么直接受影响的是开发者,接着就是影响所有用户。作为一名开发者,我想了解这方面的信息,因为这将有助于我寻找解决方案。前提是只有掌握有用的状态页面信息才能搞清楚该做么做。
其次,良好的状态页面应该主动提供厂商信息。打个比方,我们需要恢复损坏的数据库,此时获取解决方案可能需要花上几个小时而不是几分钟。
一个好的API状态页面应该有着明确的目标,让我们来看看一些最受欢迎的API厂商所使用的策略:
1. 提供状态更新
所有的图表、图形以及图标都非常的显著。信息图是用的,但是从基础层面讲,你应该提供短且清晰的、易于理解的更新状态。最好是利用简单的文本更新列表。即便是小问题,也要张贴出告之用户。
2. 显示当前API的“健康“问题
当开发者进入状态页面时能立即判断是否需要进一步调查。换句话说,此刻的API状态健康吗?
Facebook将当前的页面信息放置在页面中心,包括当前状态以及状态报告,你可以调用这些API。
Stripe的状态页面非常简洁,即便是更新项目也无需加载页面。
Twilio则列出了22个设备当前API状态及以往状态信息。
3. 回顾最近问题或宕机时间
针对透明性和有用性,API赞助商应当提供查看历史API的状态信息。例如,提供早前的24小时细节状态信息可以帮助开发人员诊断出问题。与此同时,通过此前宕机API信息也可预测出潜在的风险。
以下是,Facebook显示最近24小时里平均每小时的响应时间和错误率。
Stripe的数据可以追溯到90天。
GitHub通过七张图表让开发者深入挖掘过去的几天、几周或几个月里API状态。
如果开发者想依赖API创建应用,那么他们需要更多的了解执行细节。良好的API状态页面有助于显示当前的或最近的API健康问题,帮助开发者作出更好的运行决策。
英文出自:Programmableweb

MySQLとSQLiteの主な違いは、設計コンセプトと使用法のシナリオです。1。MySQLは、大規模なアプリケーションとエンタープライズレベルのソリューションに適しており、高性能と高い並行性をサポートしています。 2。SQLiteは、モバイルアプリケーションとデスクトップソフトウェアに適しており、軽量で埋め込みやすいです。

MySQLのインデックスは、データの取得をスピードアップするために使用されるデータベーステーブル内の1つ以上の列の順序付けられた構造です。 1)インデックスは、スキャンされたデータの量を減らすことにより、クエリ速度を改善します。 2)B-Tree Indexは、バランスの取れたツリー構造を使用します。これは、範囲クエリとソートに適しています。 3)CreateIndexステートメントを使用して、createIndexidx_customer_idonorders(customer_id)などのインデックスを作成します。 4)Composite Indexesは、createIndexIDX_CUSTOMER_ORDERONORDERS(Customer_Id、Order_date)などのマルチコラムクエリを最適化できます。 5)説明を使用してクエリ計画を分析し、回避します

MySQLでトランザクションを使用すると、データの一貫性が保証されます。 1)StartTransactionを介してトランザクションを開始し、SQL操作を実行して、コミットまたはロールバックで送信します。 2)SavePointを使用してSave Pointを設定して、部分的なロールバックを許可します。 3)パフォーマンスの最適化の提案には、トランザクション時間の短縮、大規模なクエリの回避、分離レベルの使用が合理的に含まれます。

MySQLの代わりにPostgreSQLが選択されるシナリオには、1)複雑なクエリと高度なSQL関数、2)厳格なデータの整合性と酸コンプライアンス、3)高度な空間関数が必要、4)大規模なデータセットを処理するときに高いパフォーマンスが必要です。 PostgreSQLは、これらの側面でうまく機能し、複雑なデータ処理と高いデータの整合性を必要とするプロジェクトに適しています。

MySQLデータベースのセキュリティは、以下の測定を通じて達成できます。1。ユーザー許可管理:CreateUSERおよびGrantコマンドを通じてアクセス権を厳密に制御します。 2。暗号化された送信:SSL/TLSを構成して、データ送信セキュリティを確保します。 3.データベースのバックアップとリカバリ:MySQLDUMPまたはMySQLPumpを使用して、定期的にデータをバックアップします。 4.高度なセキュリティポリシー:ファイアウォールを使用してアクセスを制限し、監査ロギング操作を有効にします。 5。パフォーマンスの最適化とベストプラクティス:インデックス作成とクエリの最適化と定期的なメンテナンスを通じて、安全性とパフォーマンスの両方を考慮に入れます。

MySQLのパフォーマンスを効果的に監視する方法は? MySqladmin、ShowGlobalStatus、PerconAmonitoring and Management(PMM)、MySQL EnterpriseMonitorなどのツールを使用します。 1. mysqladminを使用して、接続の数を表示します。 2。showglobalstatusを使用して、クエリ番号を表示します。 3.PMMは、詳細なパフォーマンスデータとグラフィカルインターフェイスを提供します。 4.mysqlenterprisemonitorは、豊富な監視機能とアラームメカニズムを提供します。

MySQLとSQLServerの違いは次のとおりです。1)MySQLはオープンソースであり、Webおよび埋め込みシステムに適しています。2)SQLServerはMicrosoftの商用製品であり、エンタープライズレベルのアプリケーションに適しています。ストレージエンジン、パフォーマンスの最適化、アプリケーションシナリオの2つには大きな違いがあります。選択するときは、プロジェクトのサイズと将来のスケーラビリティを考慮する必要があります。

高可用性、高度なセキュリティ、優れた統合を必要とするエンタープライズレベルのアプリケーションシナリオでは、MySQLの代わりにSQLServerを選択する必要があります。 1)SQLServerは、高可用性や高度なセキュリティなどのエンタープライズレベルの機能を提供します。 2)VisualStudioやPowerbiなどのMicrosoftエコシステムと密接に統合されています。 3)SQLSERVERは、パフォーマンスの最適化に優れた機能を果たし、メモリが最適化されたテーブルと列ストレージインデックスをサポートします。


ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

SublimeText3 中国語版
中国語版、とても使いやすい

Dreamweaver Mac版
ビジュアル Web 開発ツール

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

ホットトピック









