[[.NET 開発基盤部会 Wiki>http://dotnetdevelopmentinfrastructure.osscons.jp/index.php?FrontPage]]
「[[.NET 開発基盤部会 Wiki>http://dotnetdevelopmentinfrastructure.osscons.jp]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。

-[[戻る>FrontPage]]
-[[戻る>サービス]]

*目次 [#u07bf137]
#contents

*概要 [#g80e952d]
SaaS設計のポイントを纏めている。

*マルチテナント [#i82ccf3b]
*セキュリティ [#d0e9a8ad]

**分割キー [#m54dd84b]
**[[認証基盤]] [#j7e18e58]
先ずはサインアップさせないと何もできない。

**[[ゼロトラスト]] [#b64b5b1d]
[[ゼロトラスト]]なる概念の追加。

*インフラ [#a4656209]

**VM [#uf233794]

***[[クラウド]] [#k896abe7]

***VPS [#s24f6aa5]
実はVPSも良いのではないかと思っている。

-Windows Serverが使えるVPSサービスを比較 | VPS-FAN~
http://vps-fan.com/windows_server/
--VPSサービス仕様 WindowsServerオプション:レンタルサーバー ABLENETのVPS~
エイブルネット・ホスティングの仮想専用サーバー 転送量無制限~
https://www.ablenet.jp/vps/spec/op_win.html
--さくらのVPS for Windows Server~
http://solution.sakura.ad.jp/windows_vps/

**Web [#ldbc1e31]

***[[Apache vs nginx]] [#l382b8c1]
-[[Apache]]
-[[nginx]]

***SSL [#f504ba7f]
-[[Lets’s Encrypt]]

-SSLサーバ証明書の料金比較と選び方総まとめ | ServerKurabe~
http://serverkurabe.com/ssl-matome/

**DBMS [#d05b3825]

***[[SaaS>クラウド#ba07f897]] [#t74cdb03]

***[[OSS-DB]] [#n72b9cf3]

**Network [#y3d6518e]

***DNS [#yb1dcb56]
-[[Dynamic DO!.jp]](public
-クラウド・サービスなどで提供される。
--public
--private

***VPN [#d15e4651]
クラウド・サービスなどで提供される。

***プロキシ [#a38efa7e]
クラウド・サービスなどで提供される。

**配信 [#w31fa6a5]
***[[HTTPキャッシュのコントロール]] [#g03a7d29]
***[[CDN(Content Delivery Network)]] [#i5c04166]

*UIサブシステム [#v92a5a26]

**業務系 [#yddb9d8a]
-エントリ画面やグラフ表示画面はASP.NET Web Formsでも良かったが、
-[[.NET Core>.NET Coreのインストールとデプロイ]]に移行されないのでメンテナンス・フェーズとなった。

**デザイン重視 [#yc4ab126]
デザイン重視のコンテンツ部分は[[ASP.NET Core MVC>ASP.NET Coreのインストールとデプロイ]]など。

**性能・操作性重視 [#t31f94d8]
性能・操作性を重視する場合、ポストバックではなく、WebAPIにより処理する、~
Single-page application開発用の[[(MV*) UIフレームワーク]]がある。

**[[スマホ>#d0a00e9d]] / [[タブレット>#e6e04fac]] [#bdcc17e8]

***[[レスポンシブデザイン>Bootstrap#l5082446]] [#a4bb8288]
[[スマホネイティブ>#bdfe0b59]]を覚えるのが大変なので、~
[[HTML/CSS/JavaScript]]の[[レスポンシブデザイン>Bootstrap#l5082446]]で開発したいケースも多い。

***[[スマホネイティブ]] [#bdfe0b59]
-[[HTML/CSS/JavaScript>#a4bb8288]]の操作性やグラフィックを上回る。

-フロントエンド多様化の中、サービスのデリバリーのために無視できなくなってきている。

***[[ハイブリッドアプリ]] [#s8e096de]
-マルチプラットフォームをターゲットとしたアプリケーション。

-[[HTML/CSS/JavaScript>#a4bb8288]]と[[スマホネイティブ>#bdfe0b59]]を組み合せて開発する。

-皮(側?)ネイティブと呼ばれる[[スマホネイティブ>#bdfe0b59]]の中に、~
[[WebView]]を使用して[[HTML/CSS/JavaScript>#a4bb8288]]をロードして機能する。

-自作の皮(側?)ネイティブだけではなく
--[[Cordova (PhoneGap)>ハイブリッドアプリ#q74ad5ff]]
--[[Monaca>ハイブリッドアプリ#e119c229]]

>などのプロダクトも使用できる。

***[[クロスプラットフォーム開発ツール]] [#b74eab64]
-[[ハイブリッドアプリ>#s8e096de]]以外の[[クロスプラットフォーム開発ツール]]も複数登場してきている。
-[[ハイブリッドアプリ>#s8e096de]]と比べ、ネイティブ・アクセス性と性能が良い。

**[[スマホ]] [#d0a00e9d]
***[[プラットフォーム>スマホ#n7946a19]] [#mc41ffbb]
***[[機能>スマホ#pd3339bf]] [#a5f73c18]
***[[開発>スマホ#ad75f098]] [#h5e22bb6]

**タブレット [#e6e04fac]

***画面サイズ [#v0ed5f7e]
-4:3(16:10)が主流

--よく使うメディアサイズとデバイスの縦横比~
〜なぜiPadは4:3なのか | 楽しく生きたいです~
http://fun.hypoes.com/2014/06/ipad43.html

-本SaaSはTablet横置きになる。
--16(横):10(縦)に合わせて
--16(横):9(縦)の場合、横を%指定のレスポンシブで広げて対応。

***[[専用端末化]] [#u7175e58]

**参考 [#z97d976a]
-VS系コンテンツ - マイクロソフト系技術情報 Wiki~
'> 詳細 > UI系 Subsystem & Framework~
https://techinfoofmicrosofttech.osscons.jp/index.php?VS%E7%B3%BB%E3%82%B3%E3%83%B3%E3%83%86%E3%83%B3%E3%83%84#k830afa2

*マルチテナント対応 [#i82ccf3b]

**データ [#o96490c2]

***分割キー [#m54dd84b]
-店舗やユーザなどのIDでデータを水平分割する。
-フレームワークがそれ様にできてないとキツイ@ASP.NET Identity。

***テーブル分割 [#s152a9c9]
SQLも変更になるし、あまりやらなそう。

***スキーマ分割 [#lbe30b37]
-DBスキーマを増やしていくパターン。

-Oracleでは、CDB/PDBがサポートされた。
--土台となっている1個のコンテナ・データベース(CDB)に、
--複数(最大252個)の仮想的なプラガブル・データベース (PDB)。

***コンテナ化 [#d68e3dc2]
コンテナ化したいが運用できる?~
(DBなどの永続化モノはコンテナ化しないのがベターユースっぽい)

-Docker・k8sでデータベースを実運用 | ユニコーンリサーチ~
https://unicorn.limited/jp/item/703

**カスタマイズ [#xf865e8c]

**マスタ [#s152a9c9]
***定義 [#sabc29ae]
-システム共通
--定義ファイル
---*.config
---XML
---,etc.

**トランザクション [#lbe30b37]
-ユーザ個別
--[[属性テーブル>#w3d64cf7]]に持たせる。
--スキーマ・レスの非構造化データを使用

*DBMSの選定 [#d05b3825]
***属性テーブル [#w3d64cf7]
-テナント毎のカスタマイズがある場合は、
--属性マスタ・テーブル
--属性情報テーブル

>を利用する。

-参考
--マルチテナント・アーキテクチャ - @IT~
https://www.atmarkit.co.jp/fdotnet/bookpreview/azureoverview_0301/azureoverview_0301_01.html

***プログラム [#zb7390ac]
-動作のカスタマイズは定義で行うようにする。
-マルチテナント時のプログラム追加をどうするか?

**参考 [#ub7fcbe8]
-マルチテナント データ アーキテクチャ~
https://msdn.microsoft.com/ja-jp/library/aa479086.aspx

-知られざる「マルチテナントアーキテクチャ」
--(1)~SaaSはみんな同じではない? - Publickey~
http://www.publickey1.jp/blog/09/1saas.html
--(2)~スケーラビリティのカギは組織ID - Publickey~
http://www.publickey1.jp/blog/09/2id.html
--(3)~スキーマとメタデータの謎 - Publickey~
http://www.publickey1.jp/blog/09/3_2.html

*外部サービス [#u09ec451]
**[[パッケージ管理システム]] [#q85ce36e]
**[[オンライン決済サービス]] [#q1b0fa15]
**[[通知プロバイダ]] [#jc9b547b]
**[[チャット]] [#xacff86e]

*[[要素技術]] [#t0e76655]
**[[画像・音声>要素技術#qa6076ee]] [#e5678755]
**[[データ>要素技術#n10e3af9]] [#j9bfc3e3]
**[[解析>要素技術#x2860ca6]] [#q812823d]
**[[ブロックチェーン>要素技術#x93d5410]] [#r31fb087]

*[[その他の技術]] [#g8e491ed]
**[[QRコード]] [#s066e5ed]
**[[ノーコード・ローコード]] [#ta747f58]

*活用 [#ye6557e0]
**[[OSS>連携OSS確認項目]] [#cabecac3]
**[[mBaaS]] [#b83f9776]
**[[SaaS活用]] [#g2d8aedd]

**SaaS Boost [#eb7283f5]
***[[AWS SaaS Boost]] [#c11a866d]
***他のも出てきそうやね。 [#ec47225c]

*その他 [#a3ef266f]

**[[サーバレス・アーキテクチャ]] [#i128a40d]

**[[マルチサイド・プラットフォーム]] [#p72d5f48]

**xの開発で検討したこと。 [#tef59b59]

***[[QandAAnalysisEngineの開発で検討したこと。]] [#y48dadaf]


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS