最終回:「ソースは明かせない……」――ソースコードをバイナリ/難読/暗号化する:「Zend Framework」で加速するPHP開発(2/2 ページ)
PHPはスクリプト言語であるため、PHPでアプリケーションを作成して配布すると、ソースコードが読める状態になってしまいます。今回は、PHPのソースコードをバイナリ/難読/暗号化する「Zend Guard」を紹介します。
ライセンス管理
Zend Guardではライセンスを付与し、アプリケーションの稼働条件としてライセンスファイルを結びつけることも可能です。ライセンス管理されたアプリケーションには、次のような制約を付与できます(図5、6)。
- 同時ユーザー数:上限を設定できる
- 使用期間:使用可能期を設定できる
- ネットワークセグメント:IPアドレスの範囲を設定できる
- サーバ:アクセス可能なハードウェアを設定できる
コラム:商用製品で加速するPHP開発
Zend Technologiesでは、PHP開発を効率化するソフトウェアを商用製品として発売しています。本文で紹介したZend Guardもそのうちの1つですが、2007年3月現在、Zend Platform 2.2.2、Zend Studio 5.5といった製品がリリースされ、日本ではオープンソース・ジャパンが販売代理店となっています。ここでは、Zend Platform/Zend Studioの特徴を見てみましょう。
Zend Platform 2.2.2
Zend Platformは、高度な運用管理機能を提供する製品です。ここでは主な機能を紹介します。
Session Clustering
PHPは、標準でセッション管理機能を備えています。これは、アクセスしてきたクライアントをサーバ側で一意に識別し、継続したサービスを提供するための機能です。ただし、セッション情報は1つのWebアプリケーションサービス内部でしか利用できず、Webアプリケーションサーバをクラスター化して運用している場合などには、セッション情報を共有できませんでした。
この問題を解決するのが、セッションクラスターリング機能です。この機能は、複数のWebアプリケーションサービス間でセッションの情報を共有できるようにするものです。
PHP Intelligence
PHP Intelligenceは、PHPスクリプトの実行状態を細かに管理する
商用製品で加速するPHP開発機能です。例えば、あるPHPスクリプトがどの程度の処理速度で実行できているのかや、関数エラー/DBクエリエラーなどが発生していないかどうかを検出できます。また、問題が発生したときの環境を保存できるため、後で原因の追究に利用できます。
PHP Performance Management
PHP Performance Managementは、PHPスクリプトやコンテンツをキャッシュするなどして、PHPアプリケーションのパフォーマンスを向上させるための機能です。
PHP/Java Integration Bridge
PHP/Java Integration Bridgeは、PHPスクリプトの中からシームレスにJavaVMへアクセスする機能です。
Zend Studio 5.5
Zend Studioは、PHP開発に利用できるIDE(統合開発環境)です。IDEの基本機能といえるシンタックスハイライティングや変数名/メソッド名の補完機能を備えるほか、次のような機能を備えています。
- PHPアプリケーションの実行時間を詳細に把握できるプロファイラ
- CVS/Subversionと連携したバージョン管理機能
- DBMSに接続してスキーマやデータを参照/変更できる機能
- ソースコードを解析して問題が発生しがちな個所をチェックする機能
- ソースコード内のコメント(phpDoc形式のもの)を抽出してドキュメント化する機能
本記事は、オープンソースマガジン2006年11月号「Zend Framework」で加速するPHP開発を再構成したものです。
著者紹介
日本アイ・ビー・エム システムズエンジニアリング株式会社
杉田直哉
日本アイ・ビー・エム システムズ・エンジニアリング株式会社(ISE)は、日本アイ・ビー・エムグループにおけるSE技術者の専門家集団として1992年7月に設立された。
発足以来、IBM製品を中心とした難易度の高い複雑なシステム構築や先進技術の適用場面において、卓越したITスキルによりお客様と開発現場を支援してきた。
近年は、仮想化技術・グリッドコンピューティング・Web 2.0・オープンソースソフトウェア等々の先進技術分野での支援も展開している。
関連記事
- developersLife〜開発者という生き方
- 連載第1回 PHP開発でZend Frameworkを知らないだなんて嘘ですよね?
Zend Frameworkは、MVCアーキテクチャを構成し、各種コンポーネントを組み合わせることで効率的なPHPアプリケーションを構築できるフレームワークで、PHP用フレームワークの本命と呼ばれている。本稿では、Zend Frameworkについて、その機能と各種コンポーネントの使い方を解説する。 - 連載第2回 Zend Frameworkの各コンポーネントを一気に制する
前回は、Zend Frameworkの概要とその導入方法について説明しました。今回は、各コンポーネントの使用方法について紹介していきます。 - 連載第3回 ブログツールで学ぶ実践的Zend Frameworkの使い方
今回は、Zend Frameworkで構築されたブログツールを題材にして、実際にZend Frameworkに備わる機能や使い方を解説します。題材とするブログツールは、Alexatnet.comで提供されている「Alex@Net Blog」です。
関連リンク
- developerWorks
- Zend Frameworkを理解する パート1:基本
Zend Framework についてまだ聞いたことがなくてもいですって?心配には及びません。この記事では、Zend Framework を概観し、その一般概念を説明し、この「Zend Framework を理解する」シリーズで学ぶ準備をします。 - Zend Core for IBM - PHP開発者のためのガイド・ツアー
Copyright © ITmedia, Inc. All Rights Reserved.