非セキュア・データ・ストアでのプロキシの使用
プロキシの起動
非セキュア・データ・ストアのプロキシを開始するには、次のコマンドを使用します。
java -jar lib/httpproxy.jar \
-storeName <kvstore_name> \
-helperHosts <kvstore_helper_host> \
[-hostname <proxy_host>] \
[-httpPort <proxy_http_port>]
説明kvstore_name
は、データ・ストア・デプロイメントから取得されたデータ・ストア名です。pingを参照してください。kvstore_helper_host
は、データ・ストア・デプロイメントから取得されたデータ・ストアのヘルパーhost:portリストです。Javaダイレクト・ドライバ開発者ガイドのKVStoreハンドルの取得。proxy_host
は、プロキシ・サービスをホストするマシンのホスト名です。このパラメータはオプションで、デフォルトはlocalhost
です。プロキシを実行するマシンの完全なホスト名を指定することもできます。proxy_http_port
は、プロキシでリクエストをリスニングしているポートです。これはオプションのパラメータで、デフォルトは80です。ノート:
ポート80を使用するには、root権限が必要です。root権限がない場合は、ポート8080を使用できます。
非セキュアなデータ・ストアへのアプリケーションの接続
Oracle NoSQL Databaseドライバは、クライアント・アプリケーションで使用される様々なプログラミング言語で使用できます。現在は、Java、Python、Go、Node.js、C#がサポートされています。Oracle NoSQL Databaseプロキシは、クライアント・アプリケーションからのリクエストを受け入れ、Oracle NoSQL Databaseを使用してそれらを処理するサーバーです。
Oracle NoSQL Database Javaドライバには、Javaアプリケーションがプロキシと通信できるようにするjarファイルが含まれています。
Javaドライバをアプリケーションのクラスパスにインストールし、次のコードを使用してプロキシに接続します。
String endpoint = "http://<proxy_host>:<proxy_http_port>";
StoreAccessTokenProvider atProvider = new StoreAccessTokenProvider();
NoSQLHandleConfig config = new NoSQLHandleConfig(endpoint);
config.setAuthorizationProvider(atProvider);
NoSQLHandle handle = NoSQLHandleFactory.createNoSQLHandle(config);
説明
proxy_host
は、プロキシ・サービスを実行しているマシンのホスト名です。これは、以前に構成したホストと一致している必要があります。proxy_http_port
は、プロキシでリクエストをリスニングしているポートです。これは、以前に構成したhttpポートと一致する必要があります。
オンプレミス構成では、実行されているOracle NoSQLデータベース・インスタンスが必要です。また、実行中のプロキシ・サービスも必要です。
borneo.kv.StoreAccessTokenProvider
の空のインスタンスが使用されます。たとえば:from borneo import NoSQLHandle, NoSQLHandleConfig
from borneo.kv import StoreAccessTokenProvider
endpoint = 'http://<proxy_host>:<proxy_http_port>'
# Create the AuthorizationProvider for a not secure store:
ap = StoreAccessTokenProvider()
# create a configuration object
config = NoSQLHandleConfig(endpoint).set_authorization_provider(ap)
# create a handle from the configuration object
handle = NoSQLHandle(config)
proxy_host
は、プロキシ・サービスを実行しているマシンのホスト名です。これは、以前に構成したホストと一致している必要があります。proxy_http_port
は、プロキシでリクエストをリスニングしているポートです。これは、以前に構成したhttpポートと一致する必要があります。
オンプレミス構成では、実行されているOracle NoSQLデータベース・インスタンスが必要です。また、実行中のプロキシ・サービスも必要です。この場合、Endpoint
構成パラメータは、NoSQLプロキシ・ホストおよびポートの場所を指す必要があります。
...cfg:= nosqldb.Config{
// EDIT: set desired endpoint for the Proxy server accordingly in your environment.
Endpoint: "http:<proxy_host>:<proxy_http_port>",
Mode: "onprem",
}
client, err:=nosqldb.NewClient(cfg)
iferr!=nil {
fmt.Printf("failed to create a NoSQL client: %v\n", err)
return
}
deferclient.Close()
// Perform database operations using client APIs.// ...
proxy_host
は、プロキシ・サービスを実行しているマシンのホスト名です。これは、以前に構成したホストと一致している必要があります。proxy_http_port
は、プロキシでリクエストをリスニングしているポートです。これは、以前に構成したhttpポートと一致する必要があります。
アプリケーションは、プロキシ・サービスを介して接続して、実行中のNoSQLデータベースを使用します。
非セキュアなモードでは、ドライバはHTTPプロトコル経由でプロキシと通信します。必要な情報は通信エンドポイント
のみです。オンプレミスNoSQLデータベースの場合、エンドポイントはプロキシのURLをhttp://proxy_host:proxy_http_port
の形式で指定します
const NoSQLClient = require('oracle-nosqldb').NoSQLClient;
const ServiceType = require('oracle-nosqldb').ServiceType;
const client = new NoSQLClient({
serviceType: ServiceType.KVSTORE,
endpoint: '<proxy_host>:<proxy_http_port>'
});
proxy_host
は、プロキシ・サービスを実行しているマシンのホスト名です。これは、以前に構成したホストと一致している必要があります。proxy_http_port
は、プロキシでリクエストをリスニングしているポートです。これは、以前に構成したhttpポートと一致する必要があります。
{
"serviceType": "KVSTORE",
"endpoint": "<proxy_host>:<proxy_http_port>",
}
その後、このファイルを使用してNoSQLClientインスタンスを作成できます。
const NoSQLClient = require('oracle-nosqldb').NoSQLClient;
const client = new NoSQLClient('</path/to/config.json>');
アプリケーションは、プロキシ・サービスを介して接続して、実行中のNoSQLデータベースを使用します。
非セキュアなモードでは、ドライバはHTTPプロトコル経由でプロキシと通信します。必要な情報は通信エンドポイント
のみです。オンプレミスNoSQLデータベースの場合、エンドポイントはプロキシのURLをhttp://proxy_host:proxy_http_port
の形式で指定します
ServiceType.KVStore
として指定する必要があります。NoSQLConfigのインスタンスは、直接またはJSON構成ファイルで指定できます。var client = new NoSQLClient(
new NoSQLConfig
{
ServiceType = ServiceType.KVStore,
Endpoint = "<proxy_host>:<proxy_http_port>"
});
proxy_host
は、プロキシ・サービスを実行しているマシンのホスト名です。これは、以前に構成したホストと一致している必要があります。proxy_http_port
は、プロキシでリクエストをリスニングしているポートです。これは、以前に構成したhttpポートと一致する必要があります。
{
"ServiceType": "KVStore",
"Endpoint": "<proxy_host>:<proxy_http_port>"
}
その後、このファイルを使用してNoSQLClientインスタンスを作成できます。var client = new NoSQLClient("</path/to/config.json>");