2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

.net ネイティブアプリケーションからCloud Databaseへの接続 (CDBC-トライアル編)

Last updated at Posted at 2019-08-11

#概要
クラウドへの移行が加速する昨今,.net アプリケーションからCloud 上のDatabaseへの接続の需要も高まった。
Cdbc (Cloud Database Connectivity) というCloud Databaseに接続できる.NETライブラリがリリースされ、Cloud databaseを利用する.net アプリケーション(特にWindowsネイティブアプリ)の開発に新たな選択肢が増えた。

#構成図
簡単にいうと、Cdbcはクラウト上のデータベースへのプロキシ接続を提供するツール。
CDBC構成図
CDBCはCdbc ClientとCdbc Servieによって構成されている。 Cdbc ClientはCdbc Service経由してデータベースへアクセスする。Cdbc Serviceはプロキシ機能提供する。

#特徴

  1. https プロトコルを使っている、クライアント側、サーバー側DBのポート開放不要。
  2. 主要なデータベースを対応している(Oracle , SqlServer , MySql , PostgreSql)。
  3. 開発方法はODP.net、SqlClient、MySQL Connector / NET、およびNpgsqlと同じ構文。
  4. サーバー側(Cdbc Service)の開発不要、Cdbc Serviceはいくつかのセキュリティ対策を講じている。

#トライアル
CDBCの開発者はCDBC ClientのサンプルアプリケーションとCDBC service のサンドボックス環境を提供している、githubからサンプルアプリケーションを取得したらすぐサンプルソース、動作などを確認できる。
※試すだけならCDBC service、Databaseの用意、セットアップは不要。
demo環境:
http://demo.cdbc.cloud/

2つサンプル提供されている

  1. シンプルなcdbc Clientのサンプル
  2. cdbcを使って開発したPC online Storeのサンプル。
    シナリオ:
      店員はWindowsアプリケーションを使って商品メンテナンス
      お客さんはweb applicationを使ってonlineショッピング  

今回は2番のサンプルを試してみる。
https://github.com/ricct/cdbcsystemsample

##手順
###前提
 git , Visual studio 2017 or 2019 を インストールされていること

###1. githubからclone する (フォルダー: c:\test)

cd c:\test
git clone https://github.com/ricct/cdbcsystemsample.git

  
###2. ダウンロードされたCdbcOnlineStoreSystemSample.slnを開く
image.png

Management とPcStore二つのプロジェクトを確認できる。
Management - 商品管理サンプル
PcStore- online shopping siteサンプル

3.まずManagementの動作を確認してみる。

3.1 Managmentはデフォルトスタットアッププロジェクトなので、実行ボタンを押す。下記の画面出る。
image.png

https://github.com/ricct/cdbcsystemsample にuserIdとUserPasswordを記述されている。
2019/08/11現在:

Property Value
userId demouser1
UserPassword X7bgGMLh

3.2 ログインしたら、商品一覧画面表示されている。
image.png

3.3 商品を新規追加してみる
[New]ボタンを押して、ダミーの商品を追加して、保存
image.png

3.4 一覧画面で追加されていることを確認
image.png

3.5 Web 画面で商品追加されていること確認。
ブラウザで下記のURLを開く
https://demo.cdbc.cloud/pcstore/
image.png

※全員同じDB環境を使っている、管理人どのぐらいの頻度で環境リセットするのがわからないので、確認終わったら、追加した商品を削除しましょう。
image.png

#ソースを確認
##Selectサンプル
https://github.com/ricct/cdbcsystemsample/blob/f3136ef70e3ab527231243296ee5e3e4b3907183/Management/FrmProduct.cs#L76

##DMLサンプル
https://github.com/ricct/cdbcsystemsample/blob/master/Management/FrmProduct.cs#L136

ODP.netと類似していること確認できる。

#おわりに
IaaS上インストールされたDBや、AWS RDS、Oracle Autonomous などのPaaSも対応している、複雑な設定なく簡単にCloud上のデータベースに接続するツールとしてCDBCは検討、検証する価値があると思う。
新規開発はもちろん、Windows Server 2008/2008 R2の延長サポート終了に伴うCloud移行の場合の活用も期待できる。c# , vb.net開発したclient/serverアプリケーションのcloud移行は短時間、少ない改修で実現できる。

#関連ページ
CDBC公式ページ
CDBC Client @ nuget
紹介動画(字幕有)
AWS RDSへ接続の構築手順
CDBC紹介

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?