Java EE Guardians への参加について

まず、本メッセージは私の所属する会社・組織・団体、もしくは過去の所属企業といった物とは関係なく、Java の将来を危惧する、Java を好きなエンジニアからのメッセージとしてお捉えください。
「今の Java にとってユーザの声、コミュニティの声はとても重要です。」
この度日本 Java ユーザグループは、下記プロジェクトに関しての参加を表明しました。
JJUG : Java EE Guardiansへの支援表明と活動紹介
JJUG としての参加の意図は、上記をご参照ください。
Java EE Guardians オリジナル・サイトへのリンク
私も、このプロジェクトには、JJUG が参加表明前に参加しており、このプログラムの趣旨には強く賛同しています。
本件は、簡単にいうと Java EE 8 に対する活動が停滞し、オラクルの Java EE 8 の開発に対する投資が少なくなっているのではないか?と危惧する内容です。そして、今後も継続して投資をして欲しいと声をあげる場で、日本流に言えば、嘆願書のような内容です。
現在は Java EE 8 に関して課題の解決数や、メーリング・リストの活動状況などに著しく低下が見受けられ、JJUG では、それが Java EE だけでなく Java エコシステム全体に対してまで波及するのではないかと懸念し参加を表明しました。
本件に対して、Java のコミュニティメンバーとして、利用者として何ができるのかを考えてみました。
本件に対する我々のメッセージを、日本オラクル経由でオラクル本社に届けるためには、2つ方法があるのではないかと思っています。一つはコミュニティが声をあげ、それまとめる。そして、もう一つはオラクルのお客様が日本オラクルに対してメッセージを届けるということかと思います。
コミュニティのメンバーは、Twitter や、FaceBook、ブログなどのSNSを通じて本件に対する個人個人の思いを伝えていただくのが良いのではないかと思います。その声を Togetter にまとめ、日本オラクルに嘆願書として伝えるという所から始められるかもしれません。
たとえば、
#JavaEEGuardJP のハッシュ・タグを付けて、本問題に対して、皆様のご意見を頂戴し、メッセージをまとめる所から始めては如何でしょうか?
またもう一つは、オラクルの既存のお客様が声をあげていただくのが、私は最も効果的かと想定します。外資系企業というのは数値として説明し、ビジネス・インパクトを用いて説明するのが最も効果的です。そこで、既存のお客様は将来の Java/Java EE に対して危惧する内容を担当営業に伝え、日本オラクルから US にフィードバックしていただくのが、最も動きやすい形になるのではないかと思います。
日本オラクルには、その声を真摯に聞いてくださる、優秀な営業やエンジニアがたくさんいる事を知ってますし、Java が好きなエンジニアも営業もたくさんいます。ですので日本オラクルから、きっとフィードバックをしてくださることを信じています。
その為には、日本法人が動きやすくするためにも、コミュニティの声を集めたり、お客様によるビジネス・インパクトを提示し、本社への説得材料を作ることが必要なのではないかと思っています。
今ここで、Java の利用者の皆様、コミュニティの皆様、オラクルの既存のお客様は、将来の Java のために、今自分が何ができるかを考えて行動してみませんか?
#日本オラクルがんばれ
Azure MarketPlace サービス一覧
Microsoft Azure では、事前構成済みの、認定アプリケーション、オープン ソース アプリケーションなどをAzure Marketplace 経由でかんたんに利用可能です。これを利用するとボタン数クリックでいち早くサービスを起動することができます。
ただ、Azure MarketPlace はサービスは数がとても多いため、その全てをかんたんに把握することは今まで困難でした。通常は検索を利用してご希望のサービスを探していただいています。
今回、私自身で現時点(2016年6月3日時点)で登録されているサービス一覧を取得しましたので、その情報を下記に公開します。
リンクを辿っていただければ、Azure 上で簡単に仮想マシンやサービスを構築していただくことができますので、どうぞご活用ください。
|
VoipNow 3.6.0 | 4PSA |
|
4ward365 Management & Analytics for Office 365 | 4ward |
|
SiouxApp Business Suite | 7iSolutions |
|
A10 vThunder ADC for Microsoft Azure | A10 Networks |
|
ADAM | ADAM Software |
|
AIMS for BizTalk | AIMS |
| |
Axway MailGate Secure Collaboration | AXWAY |
|
Abiquo Hybrid Cloud Platform (All components) | Abiquo |
|
kiteworks by Accellion Inc. | Accellion Inc. |
|
Discovery Center Azure Starter | Active Navigation |
|
ActiveState Stackato v3.6 | ActiveState |
|
ActiveEon Workload Scheduler | Activeeon |
|
Adobe Campaign | Adobe |
|
Adobe Experience Manager (AEM) | Adobe |
|
Adra ACCOUNTS | Adra Match |
|
SUSIAccess VM | Advantech |
|
WISE-PaaS/RMM 3.1 | Advantech |
|
Aerospike Database VM | Aerospike |
|
Akeron Real Estate | Akeron |
|
Akeron Trade Promotion | Akeron |
|
NCache Open Source | Alachisoft |
|
Alert Logic Threat Manager – BYOL | Alert Logic |
|
Algebraix Analytics | Algebraix Data |
|
Algebraix Analytics Enterprise | Algebraix Data |
|
AllDigital Brevity Cloud | AllDigital Brevity |
|
AllDigital Brevity with Azure Media Services | AllDigital Brevity |
|
Alteryx Designer | Alteryx, Inc. |
|
Altiar Cloud | Altiar |
|
Analitica | Analitica |
|
Apigee Edge | Apigee |
|
CloudExpress | AppEx Networks |
|
Appcelerator Arrow API Builder | Appcelerator |
|
Appcito Cloud Application Front-End (CAFE) | Appcito |
|
GenomePilot – NGS Analysis Simplified | Appistry |
|
Apprenda PaaS | Apprenda, Inc |
|
ArangoDB – the multi-model NoSQL database | ArangoDB |
|
Aras Innovator PLM Suite | Aras |
|
Array vAPV ADC for Azure | Array Networks |
|
Aspera faspex On-Demand Hourly 100 Mbps Transfer | Aspera, Inc, an IBM company |
|
CloudBeam – Azure SQL Data Warehouse-BYOL | Attunity Inc. |
|
CloudBeam for Azure Data and Analytic Services | Attunity Inc. |
|
BPM – Document Management | AuraPortal |
|
Essentia | AuriQ Systems, Inc. |
|
AvePoint Compliance Guardian | AvePoint Inc. |
|
DocAve for Office 365 Sustainable Adoption | AvePoint Inc. |
|
Cloud Gateway for Azure | Aviatrix Systems, Inc. |
|
Awingu | Awingu |
|
Zulu Enterprise OnDemand | Azul Systems |
|
Balabit Shell Control Box | Balabit-Europe Ltd. |
|
Barracuda Web Application Firewall | Barracuda Networks, Inc. |
|
Barracuda Email Security Gateway | Barracuda Networks, Inc. |
|
Barracuda Message Archiver | Barracuda Networks, Inc. |
|
Barracuda NextGen Control Center | Barracuda Networks, Inc. |
|
Barracuda NextGen Firewall F-Series | Barracuda Networks, Inc. |
|
Riak 2.0.1 | Basho |
|
AbanteCart | Bitnami |
|
ActiveMQ | Bitnami |
|
Akeneo | Bitnami |
|
Alfresco Community | Bitnami |
|
Ametys | Bitnami |
|
Apache Solr | Bitnami |
|
Canvas LMS | Bitnami |
|
Chyrp | Bitnami |
|
CiviCRM | Bitnami |
|
CMS Made Simple | Bitnami |
|
Codiad | Bitnami |
|
concrete5 | Bitnami |
|
Coppermine | Bitnami |
|
Diaspora | Bitnami |
|
Discourse | Bitnami |
|
Django Stack | Bitnami |
|
DokuWiki | Bitnami |
|
Dolibarr | Bitnami |
|
DreamFactory | Bitnami |
| |
DreamFactory 1.6 | Bitnami |
|
Drupal | Bitnami |
|
Elasticsearch | Bitnami |
|
EnanoCMS | Bitnami |
|
ERPNext | Bitnami |
|
EspoCRM | Bitnami |
|
eXo Platform Enterprise | Bitnami |
|
eZ Publish | Bitnami |
|
Fat Free CRM | Bitnami |
|
Ghost | Bitnami |
|
GitLab | Bitnami |
|
HHVM Stack | Bitnami |
|
Horde Groupware Webmail | Bitnami |
|
Invoice Ninja | Bitnami |
|
JasperReports | Bitnami |
|
JBoss AS | Bitnami |
|
Jenkins | Bitnami |
|
Joomla | Bitnami |
|
JRuby Stack | Bitnami |
|
LAMP Stack | Bitnami |
|
LAPP Stack | Bitnami |
|
Let’s chat | Bitnami |
|
Liferay | Bitnami |
|
LimeSurvey | Bitnami |
|
Live Helper Chat | Bitnami |
|
Magento | Bitnami |
|
Mahara | Bitnami |
|
Mantis | Bitnami |
|
Mautic | Bitnami |
|
MEAN | Bitnami |
|
MediaWiki | Bitnami |
|
Memcached | Bitnami |
|
MODX | Bitnami |
|
MongoDB | Bitnami |
|
Moodle | Bitnami |
|
MyBB | Bitnami |
|
MySQL | Bitnami |
|
Neos | Bitnami |
|
Nginx Stack | Bitnami |
|
Noalyss | Bitnami |
|
Node.js | Bitnami |
|
ocPortal | Bitnami |
|
Odoo | Bitnami |
|
Open Atrium | Bitnami |
|
Open edX | Bitnami |
|
OpenCart | Bitnami |
|
OpenERP | Bitnami |
|
OpenProject | Bitnami |
|
OrangeHRM | Bitnami |
|
OroCRM | Bitnami |
|
Osclass | Bitnami |
|
OSQA | Bitnami |
|
OwnCloud | Bitnami |
|
OXID eShop | Bitnami |
|
Parse Server | Bitnami |
|
Phabricator | Bitnami |
|
phpBB | Bitnami |
|
phpList | Bitnami |
|
Pimcore | Bitnami |
|
Piwik | Bitnami |
|
Plone | Bitnami |
|
Pootle | Bitnami |
|
Prestashop | Bitnami |
|
ProcessMaker Open Source Edition | Bitnami |
|
ProcessWire | Bitnami |
|
Publify | Bitnami |
|
Railo | Bitnami |
|
Redmine | Bitnami |
|
Refinery CMS | Bitnami |
|
ReportServer | Bitnami |
|
ResourceSpace | Bitnami |
|
Review Board | Bitnami |
|
Roller | Bitnami |
|
Roundcube | Bitnami |
|
Ruby Stack | Bitnami |
|
SEO Panel | Bitnami |
|
Sharelock | Bitnami |
|
SilverStripe | Bitnami |
|
Simple Machines Forum | Bitnami |
|
SimpleInvoices | Bitnami |
|
Sitecake | Bitnami |
|
Spree | Bitnami |
|
Squash | Bitnami |
|
Subversion | Bitnami |
|
SugarCRM | Bitnami |
|
SuiteCRM | Bitnami |
|
TestLink | Bitnami |
|
ThinkUp | Bitnami |
|
Tiki Wiki CMS Groupware | Bitnami |
|
Tiny Tiny RSS | Bitnami |
|
Tomcat | Bitnami |
|
Trac | Bitnami |
|
Tracks | Bitnami |
|
TYPO3 | Bitnami |
|
Weblate | Bitnami |
|
WildFly | Bitnami |
|
WordPress | Bitnami |
|
X2Engine Sales CRM | Bitnami |
|
XOOPS | Bitnami |
|
Zurmo | Bitnami |
|
Bizagi BPM Suite | Bizagi |
|
BES12 v12.3 Base Image | BlackBerry |
|
BES12 v12.3 Dev/Test/Trial Image | BlackBerry |
|
BES12 v12.4 Base Image | BlackBerry |
|
BES12 v12.4 Dev/Test/Trial Image | BlackBerry |
|
Good Control Base Image | BlackBerry |
|
Good Proxy Base Image | BlackBerry |
|
BlueTalon Data-Centric Security | BlueTalon |
|
Boardwalk | Boardwalktech |
|
OpenGeo Suite | Boundless Spatial |
|
Brocade Virtual Traffic Manager v10.1 | Brocade Communications Systems |
|
BryteFlow CDC Free Trial BYOL. | Bryte Systems |
|
SLES 12 for PCI Compliance | Buddha Labs |
|
CA Service Virtualization On Demand | CA Technologies |
| |
Ubuntu Server 12.04.5 LTS | Canonical |
| |
Ubuntu Server 14.04 LTS | Canonical |
| |
Ubuntu Server 15.10 | Canonical |
| |
Ubuntu Server 16.04 LTS | Canonical |
| |
Docker on Ubuntu Server | Canonical + Microsoft |
| |
Caringo Swarm on Microsoft Azure | Caringo, Inc. |
|
Cautela Labs Log Management and SOC | Cautela Labs |
|
SSO-TEST | Certivox |
|
Check Point vSEC | Check Point |
|
OATSystems OATxpress 8.2 Base | Checkpoint Systems, Inc. |
|
Chef Compliance | Chef Software, Inc |
|
Chef Server 12 | Chef Software, Inc |
|
Cherwell Service Management | Cherwell Software |
|
Express Software Manager | Cherwell Software |
|
CipherPoint Console Beta | CipherPoint |
|
CipherPoint Eclipse Data Security API | CipherPoint |
|
CircleCI Enterprise BETA | CircleCI |
|
C21 Live Cloud Encoder | Cires21 S.L. |
|
C21 Live Cloud Mosaic | Cires21 S.L. |
|
CDS Data Migration Solution for Legacy to Cloud | Cirrus Data Solutions, Inc. |
| |
Cisco ASAv – BYOL 4 NIC | Cisco Systems, Inc. |
| |
Cisco CSR 1000v Deployment with 2 NICs | Cisco Systems, Inc. |
| |
Cisco CSR 1000v Deployment with 4 NICs | Cisco Systems, Inc. |
|
NetScaler 11.0 | Citrix |
|
ShareFile StorageZone Controller 3.4 | Citrix |
| |
XenApp 7.8 Trial | Citrix |
|
NetScaler VPX | Citrix Systems |
|
Video Encoder | Clickberry Inc. |
|
Cloud Cruiser for Azure Public Cloud | Cloud Cruiser |
|
CB Jenkins Enterprise | CloudBees |
|
CB Jenkins Ops Center | CloudBees |
| |
CloudBees Jenkins Platform 15.11 | CloudBees |
| |
CloudBees Jenkins Platform 15.11 BYOL | CloudBees |
|
CloudBolt Software | CloudBolt Software |
|
CloudBoost Enterprise | CloudBoost |
|
CloudLink SecureVM by EMC | CloudLink |
| |
Cloudera Enterprise Data Hub | Cloudera |
|
Applications Anywhere | Cloudhouse |
|
Cloudsoft AMP | Cloudsoft Corporation |
|
ClustrixDB | Clustrix |
|
FileCloud | CodeLathe |
|
Codenvy | Codenvy |
|
Nexus Chameleon 9.9.3 | Coffing Data Warehousing |
|
Secured Report Server Ent on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured XOOPS on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured abantecart on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured Acquia Durpal 7 on Windows 2012 R2 | Cognosys Inc. |
|
Secured Acquia Durpal on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured Apachesolr on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured Artifactory on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured AspxCommerce on Windows 2012 R2 | Cognosys Inc. |
|
Secured BeYourMarket on Windows 2012 R2 | Cognosys Inc. |
|
Secured Blog Engine.Net on Windows 2012 R2 | Cognosys Inc. |
|
Secured BugNet on Windows 2012 R2 | Cognosys Inc. |
|
Secured CakePHP on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured CakePHP on Windows 2012 R2 | Cognosys Inc. |
|
Secured CMS Gallery on Windows 2012 R2 | Cognosys Inc. |
|
Secured CMSMadeSimple on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured Codiad on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured Composite C1.NET CMS on Windows 2012 R2 | Cognosys Inc. |
|
Secured Coppermine on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured Couchbase 4.0.0 on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured Couchbase Dev 4.5 on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured CrushFTP on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured Dash Blog on Windows 2012 R2 | Cognosys Inc. |
|
Secured DashCommerce on Windows 2012 R2 | Cognosys Inc. |
|
Secured Django on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured DNN Platform on Windows 2012 R2 | Cognosys Inc. |
|
Secured Dokuwiki on Ubuntu | Cognosys Inc. |
|
Secured Dolibarr on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured DotNetAge on Windows 2012 R2 | Cognosys Inc. |
|
Secured DotNetCMS on Windows 2012 R2 | Cognosys Inc. |
|
Secured Lapp on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured Lemoon on Windows 2012 R2 | Cognosys Inc. |
|
Secured Limesurvey on Hardened Ubuntu | Cognosys Inc. |
|
Secured Live helper chat on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured Magelia Webstore on Windows 2012 R2 | Cognosys Inc. |
|
Secured Magento on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured Magento on Windows 2012 R2 | Cognosys Inc. |
|
Secured Mahara on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured MANTIS on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured Mautic on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured Mayando on Windows 2012 R2 | Cognosys Inc. |
|
Secured Mediawiki on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured MediaWiki on Windows 2012 R2 | Cognosys Inc. |
|
Secured modx on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured MODxCMS on Windows 2012 R2 | Cognosys Inc. |
|
Secured MongoDB on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured Moodle on Ubuntu | Cognosys Inc. |
|
Secured MVCForum on Windows 2012 R2 | Cognosys Inc. |
|
Secured MyCV on Windows 2012 R2 | Cognosys Inc. |
|
Secured N2 CMS on Windows 2012 R2 | Cognosys Inc. |
|
Secured Simple Machines on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured Simpleinvoice on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured Subversion on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured SugarCRM on Windows 2012 R2 | Cognosys Inc. |
|
Secured SugarCRM with LAMP Stack on Ubuntu | Cognosys Inc. |
|
Secured SuiteCRM on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured Survey Project on Windows 2012 R2 | Cognosys Inc. |
|
Secured Testlink on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured Thinkup on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured Ticket System on Windows 2012 R2 | Cognosys Inc. |
|
Secured TikiWikiCMS on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured TikiWikiCMS on Windows 2012 R2 | Cognosys Inc. |
|
Secured TinyTinyRSS on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured Tomcat on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured Trac on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured Typo3 on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured Umbraco CMS on Windows 2012 R2 | Cognosys Inc. |
|
Secured Vevo CART on Windows 2012 R2 | Cognosys Inc. |
|
Secured WEB AD on Windows 2012 R2 | Cognosys Inc. |
|
Secured Wiki asp.net on Windows 2012 R2 | Cognosys Inc. |
|
Secured WildFly on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured WordPress on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured Wysiwyg.Net on Windows 2012 R2 | Cognosys Inc. |
|
Secured X-Cart on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured youtrack on Ubuntu 14.04 LTS | Cognosys Inc. |
|
Secured Zurmo on Ubuntu 14.04 LTS | Cognosys Inc. |
|
VNS3 (Firewall/Router/VPN) | Cohesive Networks |
|
CommVault Simpana | CommVault |
|
BlockApps STRATO | ConsenSys |
|
Convertigo for Azure | Convertigo |
|
myFIdoc | Cordis Solutions |
| |
CoreOS Alpha (1053.2.0) | CoreOS |
| |
CoreOS Beta (1010.4.0) | CoreOS |
| |
CoreOS Stable (1010.5.0) | CoreOS |
|
SurPaaS Analyzer | Corent Technology Inc. |
|
Couchbase Server Community Edition v3.0.1 | Couchbase |
|
Couchbase Server Community Edition v4.0.0 | Couchbase |
|
Couchbase Server Enterprise Edition v3.1.1 | Couchbase |
|
Couchbase Server Enterprise Edition v4.1.0 | Couchbase |
|
xN Standards Converter | Dalet |
|
Instant Intelligence Top Line Reporter | Data Liberation |
|
DeviceHive | DataArt |
|
ExpeDat for Azure BYOL | DataExpeditionInc |
| |
DataStax Enterprise | DataStax, Inc. |
|
DataSunrise Database Security Suite | DataSunrise, Inc |
|
SightApps | DataTapSolutions |
|
Datacastle RED | Datacastle |
|
DgSecure | Dataguise |
|
Dataiku DSS | Dataiku |
|
Datalayer Notebook | Datalayer |
|
Administrator for Office 365 | Dell Software Group |
|
AppAssure Replication Target for Azure | Dell Software Group |
|
Dell ChangeBASE | Dell Software Group |
|
Dell Migration Manager for Enterprise Social | Dell Software Group |
|
Migration Suite for SharePoint | Dell Software Group |
|
Rapid Recovery Replication Target VM for Azure | Dell Software Group |
|
Spotlight on SQL Server Enterprise | Dell Software Group |
|
Spotlight on SQL Server Enterprise | Dell Software Group |
|
Statistica Data Miner | Dell Software Group |
|
Toad Intelligence Central | Dell Software Group |
|
Unified Communications Command Suite (UCCS) | Dell Software Group |
|
vWorkspace Azure trial | Dell Software Group |
|
DenyAll rWeb | DenyAll |
|
DenyAll Vulnerability Manager | DenyAll |
|
DenyAll Web Application Firewall – WAF & WSF & WAM | DenyAll |
|
Derdack Enterprise Alert® | Derdack |
|
Docker Subscription for Azure | Docker, Inc. |
|
contentCrawler for SharePoint | DocsCorp |
|
contentCrawler: NetDocuments | DocsCorp |
|
Dolby Encoding Azure App | Dolby Developer |
|
Dome9 Ubuntu | Dome9 |
|
Dome9 Windows Server | Dome9 |
|
Domino2Go | Donova |
|
Domino2Go(BYOL) | Donova |
|
Drone | Drone |
|
Dundas BI, Dashboards, Reporting & Data Analytics | Dundas Data Visualization, Inc |
|
DataZenie | DynApt Solutions |
|
MediaZenie | DynApt Solutions |
|
EIPOWER CLOUD SERVICES | EIP |
|
ESET Remote Administrator | ESET |
|
Everyware Cloud Lite | EUROTECH |
|
EXASOL Analytic Database | EXASOL |
|
EasyTerritory | EasyTerritory |
|
Egress Switch Email Gateway | Egress |
|
Brisk | Elastacloud Ltd |
| |
Elasticsearch and Kibana | Elastic |
|
ElasticBox | ElasticBox |
|
Elfiq Networks Cloud Connector | Elfiq Networks |
|
Eloquera DB Azure Edition | Eloquera |
|
MediaRich® All Media Server | Equilibrium |
|
MediaRich® Hot Folder | Equilibrium |
|
ArcGIS 10.3.1 for Server | Esri |
|
ArcGIS 10.4.1 for Server | Esri |
|
EvoStream Media Server | EvoStream |
|
Photon Server | Exit Games |
|
Magento + PimCore as a service | Expertime |
|
F5 BIG-IP ADC: App and Security Services BYOL | F5 Networks |
|
F5 Web Application Firewall | F5 Networks |
|
Fidesys | Fidesys |
|
FileBridge for Azure | FileBridge, LLC |
|
Armor CORE for CentOS 6 | FireHost |
|
Armor CORE for Ubuntu 14.04 | FireHost |
|
Armor CORE for Windows 2012 R2 | FireHost |
|
Flexera Software | Flexera Software |
|
FogHorn Edge Device Manager | FogHorn Systems |
|
TRITON AP-DATA Email Gateway | Forcepoint |
| |
Forscene Edgeserver | Forscene |
| |
FortiGate NGFW Single VM | Fortinet |
| |
FortiGateNGFW High Availability (HA) | Fortinet |
| |
Fortinet Web Application Firewall – FortiWeb | Fortinet |
|
FortyCloud Cloud Network Firewall | FortyCloud |
|
Digital Asset Management | FotoWare |
|
G DATA Management Server | G DATA Software AG |
|
SafeNet ProtectV | Gemalto |
| |
GitHub Enterprise | GitHub |
|
GitLab Community Edition | GitLab |
|
GitLab Enterprise Edition | GitLab |
|
GreatHorn Security Platform | GreatHorn |
| |
Haivision Media Gateway | Haivision |
|
Hanu Insight | Hanu Software |
|
HP LoadRunner | Hewlett Packard |
|
HP Quality Center | Hewlett Packard |
|
HPE Helion Stackato | Hewlett Packard |
|
ArcSight Logger 6.1 | Hewlett Packard Enterprise |
|
HexaTier (GreenSQL) Database Security & Compliance | HexaTier (Formerly GreenSQL) |
|
Credeon Secure Full-text Search | Hitachi Solutions, Ltd. |
| |
Hortonworks Data Platform Standard | Hortonworks |
|
Hortonworks Sandbox | Hortonworks |
|
eMada Student Information System | Human Logic Software LLC |
|
Magento on Ubuntu powered by IAANSYS | IAANSYS, INC. |
|
University for Life | IAM Cloud |
|
IMC Process Guidance Suite | IMC AG |
|
Magento2 on ZendServer by ITELIOS | ITELIOS SAS |
| |
SelenioFlex Live | Imagine Communications |
| |
Telurio AIM | Imagine Communications |
|
Versio 3.0 | Imagine Communications |
|
SecureSphere Web Application Firewall | Imperva Inc. |
|
IncrediBuild | IncrediBuild (Xoreax Ltd.) |
|
Metadata Management Server | InfoLibrarian |
|
Informatica Data Quality Standard Edition 9.6.1 | Informatica |
|
Informatica PowerCenter Standard Edition | Informatica |
| |
PowerCenter 10.0 Advanced Edition on Ubuntu BYOL | Informatica |
| |
PowerCenter 10.0 Advanced Edition on Windows BYOL | Informatica |
| |
PowerCenter 10.0 Standard Edition on Ubuntu BYOL | Informatica |
| |
PowerCenter 10.0 Standard Edition on Windows BYOL | Informatica |
|
Informatica Cloud Services for Azure | Informatica Cloud |
|
PortVue | Information Strategies |
| |
Intel Cloud Edition for Lustre* Software – Eval | Intel |
|
Intelligent Plant Gestalt | Intelligent Plant Ltd |
|
JFrog Artifactory Pro | JFrog |
|
Jedox for Azure | Jedox AG |
|
Jelastic Hybrid PaaS | Jelastic, Inc. |
|
Jitterbit Harmony | Jitterbit |
|
LoadMaster Load Balancer ADC Content Switch | KEMP Technologies Inc |
|
KEMP360 Central (BYOL) | KEMP Technologies Inc |
|
KNIME® Cloud Analytics Platform | KNIME |
|
Kaazing WebSocket Intercloud Connect | Kaazing |
|
Kaspersky Anti-Virus for Linux File Server | Kaspersky Lab |
|
Kaspersky AV for Windows Servers EE | Kaspersky Lab |
|
Kaspersky Secure Mail Gateway | Kaspersky Lab |
|
Kaspersky Security Center | Kaspersky Lab |
|
Kepion Cloud | Kepion Solution |
|
SD ECDN Activation | Kollective |
| |
SD ECDN Self-Service Trial | Kollective |
|
Boxless – Think outside the box | Koooik Inc. |
|
BizTalk360 | Kovai Limited |
|
Visual LANSA for Web Development | LANSA, Inc. |
|
LieberLieber Web Collaborator Enterprise Architect | LieberLieber Software |
|
Enterprise Random Password Manager (EPRM) | Lieberman Software Corporation |
|
Managed Ubuntu server – Linnovate Open Source SLA | Linnovate Technologies Ltd. |
|
Literatu | Literatu |
|
Loadbalancer.org Load Balancer for Azure | Loadbalancer.org, Inc. |
|
Loadbalancer.org Load Balancer for Azure BYOL | Loadbalancer.org, Inc. |
|
Logentries Datahub | Logentries.com |
|
Logi Info 11 (BYOL) | Logi Analytics |
|
Logi Vision 1.4 (25 Users) | Logi Analytics |
|
Logi Vision 1.4 (BYOL) | Logi Analytics |
|
PointMatter | LogicMatter |
|
Digital DNA Authentication Server | Login People |
|
Logsign Focus SIEM V4.0 BYOL | Logsign |
|
Logtrust Log Management | Logtrust |
|
Looker Analytics Platform | Looker |
|
M-Files | M-Files |
|
Asianux Server 4 SP5 | MIRACLE LINUX CORPORATION |
|
Asianux Server7 SP1 | MIRACLE LINUX CORPORATION |
|
JAMS Scheduler | MVP Systems Software Inc. |
|
Magelia WebStore Professional Edition | Magelia |
|
ManageEngine Password Manager Pro | ManageEngine |
|
ManageEngine ServiceDesk Plus | ManageEngine |
|
Zoho Creator | ManageEngine |
| |
MapR Distribution Including Hadoop in Azure | MapR Technologies, Inc |
|
MapR Sandbox VM | MapR Technologies, Inc |
| |
MariaDB Enterprise Cluster + MariaDB MaxScale | MariaDB Corporation |
|
Mavin Business | Mavin Global |
|
Official MEAN Machine – Mean.io app out-of-the-box | Mean.io |
|
MemSQL Community Edition | MemSQL |
|
MemSQL Enterprise Edition | MemSQL |
|
Mendix Pro | Mendix Inc. |
|
MentalNotes | MentalNotes |
|
MentalNotes | MentalNotes |
| |
DC/OS on Azure | Mesosphere |
|
MetaVis Office365 Suite for Azure | MetaVis Technologies |
| |
Windows Server 2012 R2 Datacenter | Microsoft |
| |
{BYOL} SQL Server 2012 SP3 Enterprise on Windows Server 2012 R2 | Microsoft |
| |
{BYOL} SQL Server 2012 SP3 Standard on Windows Server 2012 R2 | Microsoft |
| |
{BYOL} SQL Server 2016 RTM Standard on Windows Server 2012 R2 | Microsoft |
| |
Azure Container Service | Microsoft |
| |
Azure Container Service (large cluster with DC/OS) | Microsoft |
| |
Azure Container Service (large cluster with Docker Swarm) | Microsoft |
| |
Azure Container Service (production cluster with DC/OS) | Microsoft |
| |
Azure Container Service (production cluster with Docker Swarm) | Microsoft |
| |
Azure Container Service (test cluster with DC/OS) | Microsoft |
| |
Azure Container Service (test cluster with Docker Swarm) | Microsoft |
|
BizTalk Server 2013 Developer | Microsoft |
| |
BizTalk Server 2013 Enterprise | Microsoft |
|
BizTalk Server 2013 R2 Developer | Microsoft |
| |
BizTalk Server 2013 R2 Enterprise | Microsoft |
| |
BizTalk Server 2013 R2 Standard | Microsoft |
| |
BizTalk Server 2013 Standard | Microsoft |
|
BizTalk Server 2016 Community Technology Preview 1 | Microsoft |
|
Data Science Virtual Machine | Microsoft |
| |
Dynamics AX 2012 R3 | Microsoft |
| |
FreeBSD 10.3 | Microsoft |
| |
HPC Pack 2012 R2 Compute Node on Windows Server 2012 R2 | Microsoft |
| |
HPC Pack 2012 R2 Compute Node with Excel on Windows Server 2012 R2 | Microsoft |
| |
HPC Pack 2012 R2 on Windows Server 2012 R2 | Microsoft |
| |
HPC Pack cluster for Excel workloads | Microsoft |
| |
HPC Pack cluster for Linux workloads | Microsoft |
| |
HPC Pack cluster for Windows workloads | Microsoft |
|
IBM® DB2® V10.5 | Microsoft |
|
IBM® MQ V8.0 | Microsoft |
|
IBM® WebSphere® Application Server V8.5 | Microsoft |
| |
JDK 6 | Microsoft |
| |
JDK 7 | Microsoft |
| |
JDK 8 | Microsoft |
|
Linux Data Science Virtual Machine | Microsoft |
| |
Microsoft Azure Site Recovery Process Server V2 | Microsoft |
|
Microsoft Dynamics GP 2013 Developer | Microsoft |
|
Microsoft Dynamics GP 2013 R2 on Windows Server 2012 R2 | Microsoft |
| |
Microsoft Dynamics NAV 2015 | Microsoft |
| |
Microsoft Dynamics NAV 2016 | Microsoft |
| |
Minecraft Server | Microsoft |
| |
SharePoint 2013 HA Farm | Microsoft |
|
Microsoft R Server | Microsoft Corporation |
|
WebSphere Application Server Base Edition | MidVision Ltd |
|
Websphere Application Server Liberty Profile | MidVision Ltd |
|
WebSphere Application Server Network Deployment | MidVision Ltd |
|
WebSphere MQ | MidVision Ltd |
|
Magento & Wirecard Checkout Plugin | MobiLab Solutions |
|
Joget Enterprise Edition | Mokxa Technologies LLC |
|
Movie Masher | Movie Masher |
|
NCBI BLAST+ 2.2.31 | NCBI |
|
NCBI-BLAST-2.3.0 | NCBI |
|
YOUZANA Encoder & Packager | NPAW |
|
Nasuni Cloud NAS 7.2 SVM – Free Trial BYOL | Nasuni |
|
NetApp AltaVault Cloud-Based Appliance | NetApp |
|
PlateSpin Replication Environment | NetIQ |
|
pfSense for Azure | Netgate |
|
Netwrix Auditor 8.0 | Netwrix |
|
Netwrix Auditor 8.0 BYOL | Netwrix |
|
Neusoft NISG-VA | Neusoft |
|
Cloud Management Portal VM for Microsoft Azure | New Signature |
|
Maxwell Render SingleVM | Next Limit |
|
NGINX Plus | Nginx, Inc. |
|
Nuxeo Enterprise Content Management Platform | Nuxeo |
|
Nuxeo Enterprise Content Management Platform | Nuxeo |
| |
Octopus Deploy | Octopus Deploy |
|
OfficeClip Suite | OfficeClip LLC |
|
ODS DataStage | OmegaSoftware |
| |
CentOS-based 6.5 | OpenLogic |
| |
CentOS-based 6.5 HPC | OpenLogic |
| |
CentOS-based 6.6 | OpenLogic |
| |
CentOS-based 6.7 | OpenLogic |
| |
CentOS-based 7.0 | OpenLogic |
| |
CentOS-based 7.1 | OpenLogic |
| |
CentOS-based 7.1 HPC | OpenLogic |
| |
CentOS-based 7.2 | OpenLogic |
|
OpenMEAP | OpenMEAP |
g
Oracle Linux 6.4.0.0.1 Oracle
|
OpenNebula Sandbox | OpenNebula Systems SL |
|
OpenText Content Server | OpenText |
|
OpenText ContentServer for Azure DB | OpenText |
|
OpenText Media Management | OpenText |
|
Opencell | Opencell |
| |
Oracle Linux 6.4.0.0.0 | Oracle |
| |
Oracle Database 12.1.0.1 Standard Edition | Oracle |
| |
Oracle Database 12.1.0.1 Enterprise Edition | Oracle |
| |
Oracle Linux 6.7.0.0.0 | Oracle |
| |
Oracle Linux 6.8.0.0.0 | Oracle |
| |
Oracle Linux 7.0.0.0.0 | Oracle |
| |
Oracle Linux 7.0.0.0.1 | Oracle |
| |
Oracle Linux 7.2.0.0.0 | Oracle |
| |
Oracle WebLogic Server 12.1.2 | Oracle |
|
OrientDB Community Edition 2.0.10 | OrientDB |
|
OutSystems | OutSystems |
|
OutSystems Baseline | OutSystems |
|
PXL Portal Marketplace Edition | PXL AG |
| |
VM-Series (BYOL) Solution Template | Palo Alto Networks, Inc. |
|
Panorama Necto – Business Intelligence | Panorama Software |
|
Panzura Global NAS Appliance | Panzura |
| |
Pivotal Cloud Foundry on Microsoft Azure | Pivotal Software Inc. |
|
SkySync For Office365, OneDrive and Sharepoint | Portal Architects |
|
SkySync for Syncplicity | Portal Architects |
|
SkySync Tier 1 | Portal Architects |
|
Predixion Insight 4.0 | Predixion Software |
| |
PrestaShop 1.6 Template – 2 VMs for performance | PrestaShop SA |
|
PrestaShop 1.6.1.0 LAMP | PrestaShop SA |
|
KUSANAGI for Microsoft Azure | Prime Strategy |
|
Xchange Media Cloud | Primestream Corporation |
|
ejabberd Community Edition Single Instance | ProcessOne |
|
Maestro Base Server All-in-One | Profisee |
|
Puppet Enterprise | Puppet |
| |
Puppet Enterprise 3.7.2 | PuppetLabs |
|
QUALES ON the GO | QUALES |
|
Qualys Virtual Scanner Appliance | Qualys, Inc. |
|
RancherOS | Rancher Labs |
| |
RecordPoint for Office365 and SharePoint | RecordPoint Software |
| |
Red Hat Enterprise Linux 6.7 | Red Hat |
| |
Red Hat Enterprise Linux 6.8 | Red Hat |
| |
Red Hat Enterprise Linux 7.2 | Red Hat |
|
RedPoint Data Management™ | RedPoint Global Inc. |
|
RedPoint Interaction™ | RedPoint Global Inc. |
|
RLCatalyst | Relevance Lab |
|
Riverbed SteelCentral AppInternals APM | Riverbed Technology |
|
Riverbed Steelhead 9.1.0 | Riverbed Technology |
| |
Riverbed SteelHead CX 8.6 | RiverbedTechnology |
| |
Riverbed SteelHead CX 9.0 | RiverbedTechnology |
|
Rocket Discover | Rocket Software |
| |
SAP HANA Developer Edition 1.0 Revision 72 | SAP |
|
SIOS DataKeeper Cluster Edition | SIOS Technology Corp. |
|
CloudTest Lite | SOASTA |
|
SQL Sentry | SQL Sentry |
| |
openSUSE 13.2 | SUSE |
| |
openSUSE Leap 42.1 | SUSE |
| |
SLES 11 SP3 for SAP CAL | SUSE |
| |
SLES 11 SP4 | SUSE |
| |
SLES 11 SP4 (Premium) | SUSE |
| |
SLES 11 SP4 for SAP CAL | SUSE |
| |
SLES 12 | SUSE |
| |
SLES 12 (Premium) | SUSE |
| |
SLES 12 for HPC | SUSE |
| |
SLES 12 for HPC (Premium) | SUSE |
| |
SLES 12 SP1 | SUSE |
| |
SLES 12 SP1 (Premium) | SUSE |
|
Saama Insurance Fraud | Saama |
|
Saama Patient Experience | Saama |
|
Saama Real World Analytics | Saama |
|
CentOS 6.5 w/SaltStack Enterprise | SaltStack |
|
ScaleArc for MySQL | ScaleArc |
|
ScaleArc for Oracle | ScaleArc |
|
ScaleArc for SQL Server | ScaleArc |
|
Seagate Backup Services | Seagate |
|
SearchBlox Server | SearchBlox Software, Inc. |
|
Servoy v7 | Servoy |
|
Ishlangu Load Balancer ADC BYOL | Shaka Technologies |
|
Ishlangu Load Balancer ADC IS-10 (10Mbps) | Shaka Technologies |
|
Ishlangu Load Balancer ADC IS-100 (100Mbps) | Shaka Technologies |
|
Ishlangu Load Balancer ADC IS-1000 (1Gbps) | Shaka Technologies |
|
Ishlangu Load Balancer ADC IS-200 (200Mbps) | Shaka Technologies |
|
Ishlangu Load Balancer ADC IS-5000 (5Gbps) | Shaka Technologies |
|
Ishlangu Load Balancer ADC IS-BFG (Unlimited) | Shaka Technologies |
|
Shavlik Protect for Azure | Shavlik |
|
Silver Peak Unity EdgeConnect | Silver Peak Systems |
|
Silver Peak VX | Silver Peak Systems |
|
Sinefa Probe | Sinefa |
|
Sisense Business Intelligence | Sisense |
|
SnapLogic Elastic Integration Platform | SnapLogic |
|
Snip2CodePrivateInstance | Snip2Code |
|
SoftNAS Cloud NAS | SoftNAS |
|
Soha Cloud | Soha Systems |
|
Solano CI | Solano Labs |
|
Database Performance Analyzer | SolarWinds |
|
TACTIC | Workflow | Southpaw Technology Inc. |
|
SpaceCurve QuickStart | SpaceCurve, Inc. |
|
SpagoBI | SpagoBI Labs Engineering Group |
|
G-Series Cloud | Sphere 3D |
|
SnapCLOUD | Sphere 3D |
|
SnapCLOUD BYOL | Sphere 3D |
| |
Splunk Enterprise | Splunk |
|
StackStorm | StackStorm |
|
StarWind Virtual SAN | StarWind Software |
|
StarWind VTL | StarWind Software |
|
Steelhive Carbon | Steelhive |
|
StoneFly Cloud Drive | StoneFly, Inc. |
|
StorReduce | StorReduce |
|
Stormshield Network Security for Cloud | Stormshield |
|
Stormshield Network Security for Cloud – XL | Stormshield |
|
SunView Software ChangeGear Change Management | SunView Software |
|
SunView Software ChangeGear Service Desk | SunView Software |
|
Syncfusion Big Data Platform | Syncfusion |
|
TARGIT Decision Suite | TARGIT |
|
TOPdesk Service Management Bring Your Own License | TOPdesk |
|
TOPdesk Service Management demonstration account | TOPdesk |
|
TOPdesk Service Management software | TOPdesk |
|
CKAN Server | TSA Public Service GmbH |
|
Tableau Server | Tableau |
|
CloudFAST™ Core Instance | Talon |
|
CloudFAST™ for Azure Storage | Talon |
|
CloudFAST™ for Azure StorSimple | Talon |
|
Crossbar.io | Tavendo |
|
appserver.io | TechDivision GmbH |
|
Telepat.io | Telepat.io |
|
Tenable Nessus (BYOL) | Tenable |
|
WebSQL Server | Tentity |
| |
Deadline 7 Multi-VM Template | Thinkbox Software |
|
Deadline 7.2 VMs | Thinkbox Software |
|
Deadline Single VM | Thinkbox Software |
|
Speedus Lite Ubuntu Server Accelerator | Torusware |
|
TransVault Sprint | TransVault |
| |
Deep Security Manager | Trend Micro |
| |
Deep Security Manager (BYOL) | Trend Micro |
|
InterScan Messaging Security | Trend Micro |
|
Worry-Free™ Business Security | Trend Micro |
|
Typesafe Reactive Platform, Reactive Maps Demo | Typesafe, Inc |
|
COMSOL Multiphysics v5.2 | UberCloud |
|
OpenFOAM v2.3 on CentOS v6 | UberCloud |
|
STAR-CCM+ v10 | UberCloud |
|
STAR-CCM+ v10 with HEEDS MDO v2015 | UberCloud |
|
Unidesk4 | Unidesk |
|
Unified Streaming | Unified Streaming |
|
VIDIZMO EnterpriseTube Premium | VIDIZMO LLC |
|
VMTurbo Operations Manager | VMTurbo |
|
DocSuite | Vecomp Software Srl |
|
VCC for Service Providers | Veeam |
|
Direct Restore to Azure | Veeam |
|
Managed Backup Portal | Veeam |
|
VCC for the Enterprise | Veeam |
|
VBOT | Videobot |
|
Vidispine Content Management | Vidispine |
|
Vircom modusGate Email Security Gateway | Vircom Inc. |
|
ViaWorks – Enterprise Discovery | VirtualWorks |
|
Double-Take DR | Vision Solutions |
|
Double-Take MOVE | Vision Solutions |
|
Nimble Streamer (CentOS 7.1) | WMSPanel |
|
Nimble Streamer (Ubuntu 14.04 LTS) | WMSPanel |
|
Nimble Streamer (Windows 2012 R2 Datacenter) | WMSPanel |
|
Locker Secure Tomcat | Waratek |
|
Warewolf ESB | Warewolf Ltd |
|
RightsWATCH | Watchful Software |
|
Protect Server Azure | Workshare Technology Inc |
|
Wowza Streaming Engine | Wowza Media Systems, LLC |
|
XMPro iBOS | XMPro |
|
XebiaLabs XL Deploy | XebiaLabs |
|
d3view-v5 | Xfinity Inc |
| |
XtremeData dbX 2-10 node | XtremeData, Inc |
|
Yellowfin for Azure | Yellowfin |
|
Herefordshire Enterprise Platform – Drupal 7 | Your Shop Online |
|
Xenofile for Azure – Ubuntu 14.04 LAMP stack | Your Shop Online |
|
ADAPA Decision Engine | Zementis |
|
ADAPA Scoring Engine | Zementis |
|
PHP – Zend Server | Zend Technologies |
|
Zoomdata Server | Zoomdata |
|
aiMobile Mobile Content Management & Acceleration | aiScaler |
|
aiProtect Denial of Service Protection | aiScaler |
|
aiScaler Load Balancer & Site Acceleration | aiScaler |
|
Cortical.io Retina Engine | cortical.io |
| |
Debian 7 “Wheezy” | credativ |
| |
Debian 8 “Jessie” | credativ |
|
deFacto Business Modeling and Planning | deFacto Global, Inc. |
|
InteGREAT4TFS 2015 Update 2 | eDevTECH |
|
InteGREAT4TFS 2015 Update 3 | eDevTECH |
|
eperi Gateway for Cloud Apps | eperi |
|
iBabs Server | iBabs |
|
Meeting Rooms | iQuest |
|
Meeting Rooms – SME package | iQuest |
|
inRiver PIM | inRiver AB |
|
jetNEXUS Application Load Balancer / ADC | jetNEXUS |
|
Mail2Cloud Archive & Collaboration | mxHero | Mail2Cloud |
|
Tarantool | my.com |
|
op5 Monitor Enterprise | op5 AB |
|
quasardb XTP node | quasardb |
|
simMachines VM | simMachinesInc |
|
SlashDB | vt.enterprise |
GlassFish から Payara 移行のススメ
先日 decode:2016 が開催され、山本裕介さんと一緒にセッションを行いました。ご参加いただいた皆様、誠にありがとうございました。

今回の de:code 2016 では、私が今できること、私ならではの内容が何かないかを考え構成を検討しました。本ブログではその経緯をご紹介します。そして次のエントリでは技術的な内容に触れる予定です。
結論から申し上げると、今回ご紹介した内容は、 Payara という Java EE アプリケーション・サーバを利用した、マルチリージョン間のレプリケーション方法(冗長構成)についてです。かんたんにいうならば、Azure の東日本リージョンと西日本リージョンに、それぞれクラスタ環境を構築し、その東日本と西日本のリージョンをさらに冗長化させるという超ミッション・クリティカル向けのお客様用の構成をご案内しました。

Payara Cluster on Azure のハンズオン・ラボ・コンテンツへのリンクはこちら
Payara クラスタの機能を紹介の前に、Payara について紹介したいと思います。
エンタープライズ Java 系の開発を行っている方は、GlassFish というアプリケーション・サーバの名前は聞いたことがあるのではないかと思います。先日のアプリケーション・サーバ利用者アンケートにおいても Tomcat の次に利用されていたのが GlassFish でした。そこで、おそらく名前は聞いたことがあるのではないかと思います。私は Sun Microsystems 時代は、この GlassFish のエバンジェリストをしていました。このブログでも GlassFish に関連したコンテンツを多数記載しています。GlassFish にご興味のある方は、タブを切り替えて GlassFish に関するコンテンツをぜひごらんください。
さて、ここで簡単に GlassFish についてご紹介します。GlassFish は Java EE 5 がリリースされるタイミングで、Tomcat に変わって Java EE の参照実装になったアプリケーション・サーバです。各バージョンの違いは下記になります。
GlassFish v1 : Java EE 5 開発者向け(参照実装)
GlassFish v2.x : Java EE 5 本番環境向け(参照実装:商用サポート可)
GlassFish v3.x : Java EE 6 開発→本番環境向け(参照実装:商用サポート可)
GlassFish v4.x : Java EE 7 開発者向け(参照実装:商用サポート不可)
Tomcat と GlassFish の大きな違いは、Tomcat は Servlet/JSP を動作させるための Web コンテナ、EL 式の実装など、Java EE に含まれる一部の機能しか保持していませんが、GlassFish は Java EE に含まれる機能をすべて動作させることができます。
Tomcat, Jetty : Web コンテナ(Servlet, JSP) + EL + WebSocket など一部
GlassFish, WildFly, WebSphere Liberty, Payara, WebLogic, WebSphere など : Java EE 準拠
Web アプリケーション開発に必要な機能がオールインワンで提供され、依存関係も自分で解決しなくてもよいため Java EE 開発にはとても便利です。
また、GlassFish の登場が、その後のアプリケーション・サーバ市場に与えた影響は大きいものと思っています。実際に、はじめて軽量化を打ち出し、高速起動(モジュール化は既にあった)を実現したのはこの製品でした。Sun Microsystems 時代、この製品の新バージョンにワクワクし、自信を持ってこの製品を訴求をしていました。そして、GlassFish v3 の登場で、重厚長大だったアプリケーション・サーバのイメージが変わり、随分と扱いやすい物になったと思われた方もいらしゃるのではないかと思います。そして、その後 JBoss(WildFly) や、WebSphere がこれに追随し軽量版を出してきたのはいうまでもありません。
Sun Microsystem と Oracle との統合後、2013年11月04日 Oracle は Java EE and GlassFish Server Roadmap Updateを発表しました。この内容によると、今後も継続して、GlassFish は Java EE の参照実装として提供するものの、GlassFish v4 以降の商用サポートを打ち切る内容も発表しました。変わりに WebLogic Server を戦略的な製品として位置付け、商用サポート系は全てそちらにフォーカスするという内容でした。その当時、書いたブログの内容がコチラになります。
Java EE and GlassFish Server Roadmap Updateについて
この発表は、日本以上に利用されていた、北米・ヨーロッパでは大きなインパクトがあったようです。そして、2013年末 ロンドンに拠点をおく、C2B2 というミドルゥエア関連のコンサルティング企業が GlassFish(OpenSource GPLv2, CDDL) を fork して商用サポートを提供することを発表しました。
2016 年より Payara Services Ltd という企業を立ち上げ、現在はこの会社名でサービスを提供しています。つまり、Payara は GlassFish を商用サポートできるようにし、一部機能をエンハンスした製品です。たとえば GlassFish v4 には含まれていないクラスタ機能が Payara には含まれており、本番環境へも安心して適用可能になりました。また、Hazelcast という Open Source の In-Memory Data Grid 製品を同梱し、セッション・レプリケーション、JCache, JPA の2次キャッシュとして利用できます。Hazelcast は、ここ最近 Java 業界で注目されている製品で、下記の用途として利用できます。
Hazelcast
* Caching
* NoSQL
* In-Memory Data Grid
* Web Session Replication
さらに、Payara の商用製品 Payara Enterprise のライセンスを購入すると、Hazelcast Enterprise の機能が利用できるようになり(OEM)、Payara Scales という機能が利用できるようになります。これは、よりミッション・クリティカル環境への用途に向いています。
http://www.payara.fish/payara_scales
Payara のソースコードは GitHub でメンテナンスが施されており、Java EE 8 の参照実装プロジェクト(GlassFish v5)へのサポートも迅速に行うようです。また、今まで GlassFish を利用していた方は、全く同じ方法で Payara を利用することができます。
https://github.com/payara
https://github.com/payara/Payara/tree/Payara-5
GlassFish を開発環境でご使用中で、本番環境へもご適用したいと思われている方は Payara を試されてみては如何でしょうか?
次のエントリでは、Payara Scale を利用した、Azure 上でのマルチ・リージョン間の冗長構成について説明します。
ブログにするには量が多かったので、下記にまとめました。
Payara Cluster on Azure のハンズオン・ラボ・コンテンツへのリンク
|
余談: 私は Sun Microsystems から Oracle 時代に「Tomcat やめましょう、Struts やめましょう、Eclipse やめましょう」といったメッセージを出してきました。ここで、なぜそのようなメッセージを出してきたのかの理由を少し説明します。個人個人でお話しをする方には話しをしたことはありますが、これを公でちゃんと言ったことは恐らくないので。 本来、自分の押す技術を紹介するために、他者の技術を否定したりするのは良くないと思っています。実際、それに対してご指摘(お叱り)をいただいたことも何度かありますし、逆に Java の観点で Java 自身が言われる立場の思いもしたこともあります。言われる方の悲しさも知っています。それではなぜ、あえてそうした事を言い続けたかというと、「寺田さん、別にそれでできるから…」、「寺田さんの言ってるのは、技術者としてはとても良く分かるけど、上からこれを使いなさいと言われる」といった言葉をたくさん聞いたためでした。この言葉を受け取った時「何も行動していただけない、このままだと何も変わらない」と感じたものでした。前者は私の伝え方が足りないんだと思います、しかし後者は、あきらかに違うとおもいました。日本独自の標準化思考によって、利用する物をエンジニアが取捨選択するのではなく、それが最適な方法なのかも考えずに、ただ上から指摘された物を利用する。これは、エンジニアにとってアン・ハッピーだと思います。その止まった(と思える)思考を再度動きだしていただくために、そして「今正しいと思っていることが将来にわたって正しいと思ってはいけない」ということをどうしてもお届けしたくて、あのようなメッセージをだしていました。 メッセージをだし始めたのが、今から 7,8年くらいまえだと思いますが、そこから色々と変わったと思います。たとえば Struts は日本でもずいぶんと取り扱われなくなり、Eclipse も「Java サポートにおいては一時期停滞していたように思えます」が、Eclipse Che などの先進的なブラウザ・ベースの IDE がでてきたりしています。また、日本でも IntelliJ IDEA といった人気の IDE が使われるようになっています。さらに、最近ではマイクロ・サービスを実現するための実行可能 jar 形式の Web アプリ・フレームワーク(Spring Boot, Payara Micro, WildFly Swarm)も登場し、利用者数も著しく増加しています。私はこれはとても良い傾向だと思っていますし、今後この手法がより多く採用されるようになる可能性が強くあります。一方でアーキテクトの立場の方は、今とても難しいのかもしれません。プログラミング言語においても、フレームワークにしても、アプリケーション・サーバにおいても、たとえそれが開発方法論であったとしても、銀の弾丸と呼べる物はありません。これをやっておけば、十分という物はないんだと思います。場合に応じて、テクノロジー・方法論を取捨選択する必要があり、それを考えられる方が、より良いシステムを作っていけるのではないかと思います。 |
Java サーバ利用状況アンケート結果の公開
皆様、先日は Java のサーバの利用状況に関するアンケートにお答えいただきまして誠にありがとうございました。私個人からのアンケートについて「1 週間で 669 名」という、非常に多くの皆様からご回答いただきまして心より感謝しております。

本日は、その結果をここに公開したいと思います。本結果について私は一切手を加えておりませんので、その点は信用ください。
※ 投票時に途中結果をご覧いただけないよう設定したのは、数が少ない場合に不本意な団体票が入るのを避けるためでした、その点をどうぞご理解ください。

本アンケートはとても興味深い結果を得ることができました。


この結果に対し、皆様それぞれがそれぞれの目線でいろいろな見方をすることができるかと思います。
まず、Tomcat は今なお圧倒的に利用者が多いようです。この結果を見る限りビジネス視点で Tomcat 利用者のための情報提供は重要という見方ができます。また一方で、古くからサーバ・サイド Java 開発に携わる方の中にはシェアがずいぶん落ちてきているという見方をする方もいらっしゃることでしょう (かつては 5 割を超えていたと思います)。
また、今回、GlassFish が2位につけているのも、私が過去 GlassFish のエバンジェリストであったこと、さらに本ブログでも GlassFish に関する技術情報を多く掲載しているために多いと見ることもできますし、GlassFish や他の Java EE 準拠サーバの利用者数をあわせてみると、Java EE が、日本で広く採用されているだろうことを想像できます。
ここで、元 GlassFish のエバンジェリストとして1点皆様にアドバイスがございます。現在、GlassFish をご利用の皆様は、10 番目にランクされている Payara Server への移行をお勧めいたします。Payara Server は GlassFish を Fork して実装されている製品で、24H/7 のサポートを提供する製品で、GlassFish に比べバグ修正が頻繁に行われ安心です。GlassFish の GUI 画面や CLI のコマンド操作感はそのままに、よりクオリティの高い製品をご利用いただくことができます。
3位に、組み込みコンテナが入っているのも特筆すべき内容です。その多くは Spring Boot かと想定しますが、昨今注目を浴びている Microservice アーキテクチャを実現するためこれらの利用者が急激に増えてきているのではないかと想定します。今後、Spring Boot, WildFly Swarm, Payara Micro といった、コンテナ・レスの技術も注目です。
最後に、
本アンケートへのご回答に関し、企業におけるサーバ選定の意思決定者がどの程度含まれているかがわからないため、実現場では上記データとは変わる可能性もあります。しかしながら、私のブログをご覧いただいている方や、Java コミュニティに所属する方々、アンテナ感度の高いエンジニアの皆様が今何を選定しているのかを、この結果から理解していただくことができるのではないかと思います。
この結果を元にそれぞれの企業・技術者が、今何をすべきか、何を選択すべきか考える材料にしていただければ誠に幸いです。
Java サーバの使用状況のアンケートのお願い
サーバ・サイド Java の開発・運用に携わっていらっしゃる方に質問がございます。現在、サーバ・サイドのJava 開発環境もしくは本番環境で、どのサーバ (Webコンテナ、アプリケーション・サーバ)をご利用いただいているか理解したいと考えております。そこで、大変恐れ入りますが下記のアンケートにご協力いただけないでしょうか。
みなさまもご興味ないでしょうか?
アンケートは終了しました。ご協力いただきまして誠にありがとうございました
複数ご回答いただいてもかまいません。個人情報は取得しませんし、この結果を売買に使うことも決してありません。利用状況について正しく把握することで、現在のサーバ・サイドのトレンドについて理解できるとともに、結果を本ブログで公開することで他の皆様にも有用な情報になるのではないかと想定しております。締め切り後に、再利用可能な結果(順位、投票数、パーセント)として公開します。
本データは、日本全体における利用状況の実データにはならないと思いますし、市場調査会社がだす結果とは異なると思いますが、それでも Java コミュニティ参加者や、本ブログをご覧いただいている皆様の近辺のデータを集めることができるのではないかと想定しております。
※ これは#てらだよしお 個人的なお願い事であり、所属企業や団体からの問い合わせではないことをご理解いただければ誠に幸いです。
たとえ、いただいた結果が 10 票以下でも結果はブログで公開いたしますが、母数(投票数)があまりにも少ない場合は信頼性が大幅にかけ、意味のないデータになってしまいますので、可能な方は恐れ入りますが、どうぞご協力いただけませんでしょうか。どうぞ宜しくお願いします。
MySQL on Docker with UTF-8 CHARSET
ちょっとした自分用メモです。
以前、デモで MySQL の Docker コンテナを作成した際、オフィシャルの Docker イメージを利用した場合、たとえ、下記を /etc/mysql/conf.d/charset.cnf に指定しても作成した DB のテーブルが latin1 になってしまう問題にあいました。
[mysqld]';
skip-character-set-client-handshake
character-set-server=utf8
collation-server=utf8_general_ci
init-connect = SET NAMES utf8
[client]
default-character-set=utf8
そこで、docker-entrypoint.sh を追記して、DB 作成時に明示的に utf8 を渡すように変更しました。
(docker-entrypoint.sh の追記箇所)
# 前略
# 引数で書く所をファイル中に記載
DATADIR="/var/lib/mysql"
MYSQL_ROOT_PASSWORD="supersecret"
MYSQL_DATABASE="artist-db"
MYSQL_USER="mysql"
MYSQL_PASSWORD="mysql"
MYSQL_CHARSET="utf8"
# 中略
if [ "$MYSQL_DATABASE" ]; then
echo "CREATE DATABASE IF NOT EXISTS \`$MYSQL_DATABASE\` ${MYSQL_CHARSET:+CHARACTER SET $MYSQL_CHARSET} ;" >> "$tempSqlFile"
fi
# 後略
これで、Docker コンテナの MySQL で UTF-8 を扱えるようになるかと思います。
MySQL 用の Dockerfile
FROM mysql:5.7
RUN { \
echo '[mysqld]'; \
echo 'skip-character-set-client-handshake'; \
echo 'character-set-server=utf8'; \
echo 'collation-server=utf8_general_ci'; \
echo 'init-connect = SET NAMES utf8'; \
echo '[client]'; \
echo 'default-character-set=utf8'; \
} > /etc/mysql/conf.d/charset.cnf
COPY ./docker-entrypoint.sh /tmp/entrypoint.sh
COPY ./start-up.sh /tmp/start-up.sh
RUN chmod a+x /tmp/entrypoint.sh
RUN chmod a+x /tmp/start-up.sh
ENTRYPOINT ["/tmp/start-up.sh"]
EXPOSE 3306
CMD ["mysqld"]
DB を作成するためのスクリプトファイル(docker-entrypoint.sh)
#!/bin/bash
set -e
# if command starts with an option, prepend mysqld
if [ "${1:0:1}" = '-' ]; then
set -- mysqld "$@"
fi
# 引数で書く所をファイル中に記載
DATADIR="/var/lib/mysql"
MYSQL_ROOT_PASSWORD="supersecret"
MYSQL_DATABASE="artist-db"
MYSQL_USER="mysql"
MYSQL_PASSWORD="mysql"
MYSQL_CHARSET="utf8"
if [ "$1" = 'mysqld' ]; then
# read DATADIR from the MySQL config
DATADIR="$("$@" --verbose --help 2>/dev/null | awk '$1 == "datadir" { print $2; exit }')"
if [ ! -d "$DATADIR/mysql" ]; then
if [ -z "$MYSQL_ROOT_PASSWORD" -a -z "$MYSQL_ALLOW_EMPTY_PASSWORD" ]; then
echo >&2 'error: database is uninitialized and MYSQL_ROOT_PASSWORD not set'
echo >&2 ' Did you forget to add -e MYSQL_ROOT_PASSWORD=... ?'
exit 1
fi
echo 'Initializing database'
mysqld --initialize-insecure=on --datadir="$DATADIR"
echo 'Database initialized'
# These statements _must_ be on individual lines, and _must_ end with
# semicolons (no line breaks or comments are permitted).
# TODO proper SQL escaping on ALL the things D:
tempSqlFile='/tmp/mysql-first-time.sql'
cat > "$tempSqlFile" <<-EOSQL
-- What's done in this file shouldn't be replicated
-- or products like mysql-fabric won't work
SET @@SESSION.SQL_LOG_BIN=0;
DELETE FROM mysql.user ;
CREATE USER 'root'@'%' IDENTIFIED BY '${MYSQL_ROOT_PASSWORD}' ;
GRANT ALL ON *.* TO 'root'@'%' WITH GRANT OPTION ;
DROP DATABASE IF EXISTS test ;
EOSQL
if [ "$MYSQL_DATABASE" ]; then
echo "CREATE DATABASE IF NOT EXISTS \`$MYSQL_DATABASE\` ${MYSQL_CHARSET:+CHARACTER SET $MYSQL_CHARSET} ;" >> "$tempSqlFile"
fi
if [ "$MYSQL_USER" -a "$MYSQL_PASSWORD" ]; then
echo "CREATE USER '$MYSQL_USER'@'%' IDENTIFIED BY '$MYSQL_PASSWORD' ;" >> "$tempSqlFile"
if [ "$MYSQL_DATABASE" ]; then
echo "GRANT ALL ON \`$MYSQL_DATABASE\`.* TO '$MYSQL_USER'@'%' ;" >> "$tempSqlFile"
fi
fi
echo 'FLUSH PRIVILEGES ;' >> "$tempSqlFile"
set -- "$@" --init-file="$tempSqlFile"
fi
chown -R mysql:mysql "$DATADIR"
fi
exec "$@"
MySQL の起動用スクリプト(start-up.sh)
#!/usr/bin/env bash /tmp/entrypoint.sh mysqld --datadir=/var/lib/mysql --user=mysql
ファイルを作成したのち、Dockerfile を保存している場所で下記のコマンドを実行して Docker イメージを作成
$ docker build -t tyoshio2002/mysql:5.7 .
作成した Docker イメージを起動
$ docker run -d -p 3306:3306 tyoshio2002/mysql:5.7
で MySQL を起動できるかと思います。
※ オフィシャルのイメージに対して、文字コードを指定できるようにしてほしいというリクエストが多数上がっているので、オフィシャル側で対応してほしいですね。他に良い方法をご存知の方がいらっしゃったら教えてください。
Java on Microsoft Azure 情報のまとめ記事
今日は、Java の開発者の皆様が Microsoft Azure を利用する上で有用な情報もまとめて一気にご紹介します。どうぞごらんください。
※ 本記事は、前回の投稿内容に加え、プレゼン内容とデモ内容をマージしたものです。
前回投稿した記事の内容(文章)はすべて本記事に移動しました。
Java 開発者の皆様のためのツール
Microsoft Azure が提供するサービスを利用した Java のアプリケーション開発をされたい場合、 Azure SDK for Java を我々は提供しています。Azure が提供するサービスにはたとえば次のようなサービスがあります。
Blob Service
Media Services
Queue Services
Service Bus Queues
Table Service
IoT Hub Service(日本語)
SDK は Maven プロジェクトから利用できるため、OS の環境や統合開発環境の種類によらずご利用いただくことができます。
もし、この SDK の API が気に入らない場合は、どうぞご自由に変更してください。SDK はオープン・ソースとして公開されており、GitHub からソースコードをご参照していただくことが可能です。
ディレクトリ・サービスを使用した ID 管理が行い場合は、Azure Active Directory Library for Java をご利用いただくことができます。
もし、NoSQL データベースとして MongoDB をご利用されたい場合は、通常の MongoDB Java API に加え、MongoDB-as-a-Service on Microsoft Azure や
Microsoft の DocumentDB サービス用の Java SDK も利用可能です。
また、ステートレスのアプリケーションでどこかで永続化データを管理したい場合、Azure Redis Cache が簡単で安全なためおすすめです。チュートリアルはこちらにあるので、こちらをご参照ください。Java を利用した Azure Redis Cache の使い方.
また、統合開発環境においても Eclipse や IntelliJ IDEA などで Azure 用のプラグインを提供しています。もし、Eclipse や IntelliJ をご利用の場合は、下記もどうぞお試しください。
Azure toolkit for Eclipse
MS Open Tech Tools: IntelliJ and Android Studio Plugin for Microsoft Services
上記の、MS Open Tech Tools plugin for Microsoft Services は Android のアプリケーションと Office 365、Azure モバイル・サービス、Azure ストレージなどと統合する機能も提供しています。
Java に関連した企業との協力なパートナーシップ
マイクロソフトはオープン・ソースのコミュニティと強く協力していくことがとても重要と考えています。またマイクロソフトは、OpenJDK に対する商用サポートを提供する Azul Systems と強いパートナー・シップを結んでいます。これにより Azul が提供するOpenJDK( Azul Zulu® )をMicrosoft Azure 上でもご利用いただくことができ、OpenJDKに対するサポートも提供します。これは、すでに EoL になってしまった Java SE 7 に対するサポートも含まれ、オラクルの有償Javaサポートプログラムに対する代替の手段としてご検討いただくことも可能です。Eclipse や IntelliJ をご利用の方は、 Azure toolkit for Eclipse や MS Open Tech Tools plugin for Microsoft Services をご利用いただくと、デプロイ時に Zulu を利用することも可能です。Azure のマーケット・プレスでは、Zulu をバンドルした Azure の仮想マシンも(Windows, Linux)提供しており(Azure Virtual Machines Gallery)、簡単にご利用いただくことができます(※ 日本でのサービス提供開始はまだです、今しばらくお待ちください)。
また、 HortonWorks ともパートナーシップを結ぶことによって、Hadoop ベースのサービス(HDInsight)を簡単にご利用いただくことができます。さらに、Cloudier ともパートナーシップを結んでおり、Azure 上で Hadoop ベースの Cloudier Enterprise Dataの仮装マシンを Azure 上でご利用いただくことができます。また、DataStax 社ともパートナー・シップを結び、Cassandra もご利用いただくことができます。
その他にも、マーケット・プレスではOracle WebLogic, IBM WebShpere など様々な製品をご利用いただけるようになっています。
マイクロソフトは、Java 業界に対して、ほとんどしがらみがないので、アプリケーション・サーバもこれを使ってくださいなどとは申し上げません。ベンダー・ニュートラルで、どのようなアプリケーション・サーバでも普段お使いのアプリケーション・サーバをどうぞご自由にご利用ください!!
継続的インテグレーション・継続的デリバリ
もし、Jenkins を普段ご利用いただいているのであれば、Azure の仮装マシンを Jenkins のスレーブとしてご利用いただくことができます。その際、Jenkins Slave Plugin for Azure をご利用ください。また、build artifacts を Azure が提供するストレージサービスに対してデプロイすることもできます(Azure Storage plugin for Jenkins)。
さらに、JJUG CCC 2015 Fall で一部の方にはデモをご覧いただきましたが、Azure と Jenkins, Docker を利用して下記のような DevOps を実現することも可能です。
統合開発環境からソースをコミットしたのち、チーム開発用のツールを SaaS として提供する Visual Studio Team Services (VSTS) の Git に対してプッシュします。VSTS の Git にプッシュしたのち、Azure 上で稼働する Jenkins で Build, Test を行い、ビルドとテストを正しく完了した場合に、アプリケーションを稼働させるための、Docker イメージを作成し、Docker Hub へイメージをプッシュします。Docker Hub へイメージをプッシュしたことを、Docker Tutum が検知し、Tutum 経由で、Azure 仮装マシン作成し、Dockerサーバを構築、最終的にはDocker コンテナの起動までを全て自動化できます。
Microsoft は CloudBees ともパートナー・シップを結んでおり、CloudBees Jenkins Enterprise on Azure (セキュアで最適化されたプラグインを含む)をご利用いただくことができます(詳細はこちらをご参照 : CloudBees Blog)。
Linux マシンも問題なく稼働
Microsoft Azure の中で稼働する仮装マシンのうち、すでに 25% が Linux で稼働しています。Windows 環境だけではなく、Linux 環境も安心してご利用いただくことが可能です。また事前設定済みの WebSphere や WebLogic も提供しています。WebSphere, WebLogic
Azure に対する配備を自動化したい場合、Azure Command Line Interface や Azure Resource Manager template をご利用いただくこともできます。Linux や Mac、Windows 環境でコマンドラインからデプロイを管理したい場合、 Azure CLI をダウンロード・インストールしてご利用ください。また、より複雑なクラウドのインフラ環境を構築したい場合は、Azure Resource Manager をご利用いただき、再利用可能なテンプレートを作成してください。例えば、こちらにある、数百にわたる Azure Resource Manager Quickstart Templates をご利用いただくことでより早くご利用いただけます、これらは全てGitHub におかれています。
Java Web アプリケーションの監視
Java web application monitoring with Application Insights
Application Insights という機能を利用すると Java の Web アプリケーションの使用状況やパフォーマンスなどをグラフィカルに監視できるようになります。詳しくは下記をごらんください
Get started with Application Insights in a Java web project
Application Insights for Java web apps that are already live
Application Insight のサンプルはこちらの GitHub にあります。
他にも、様々なサービスを利用いただけますが、これから継続して情報をお届けします。
Java で Web アプリケーションを開発する方も、ぜひ Microsoft Azure をぜひ触れてみてください。
WebSocket ハンズオンと Java on Microsoft Azure について
この記事は Java EE Advent Calendar 2015 の12/22分の記事です。
昨日は、emag@github さんのWildFly Swarm 周遊でした。
明日は、@HirofumiIwasakiさんです。
マイクロソフトに転職してはやいもので5ヶ月が過ぎ、やっと会社にも同僚にも慣れてまいりました。Java EE の Advent Calendar ということで Java EE に関連した内容をお届けします。
内容は、Azure 上で WebSocket のアプリケーション開発のハンズオン・ラボの資料です。当初、ブログにまとめようと思いましたが、ページ数がかさむのでラボの資料は、下記の PDF にまとめました。また、このハンズオンは、学生(専門学校の皆様や大学生)も理解していただけるよう記載した内容ですので、社会人の皆様でも、はじめて WebSocket を学ぶ方には有効ではないかと思います。ぜひ下記のハンズオンをお試しいただき、Java EE 7 の WebSocket を Azure 上でお楽しみください。
SlideShare : SlideShare からも直接ご覧いただけます。(PDF のダウンロードも可能)
Docs.com : Docs.com からもご覧いただけます。(PDFのダウンロードも可能)
最後に
今年は、Java 業界を驚かせてしまったり、お騒がせしましたが、みなさま本当にありがとうございました。Java の 20 周年を皆様と一緒に過ごすことができたのは心より幸せでした。そして、マイクロソフトに転職しても Java のエバンジェリストができて、今なによりも幸せです。マイクロソフトに入社して、今年は少し様子見をしていた所もあります。しかし来年は、もっと積極的にやっていく予定ですので、会社が変わってもどうぞ皆様、これからもよろしくお願いします。
皆様、良いお年を!!
Have a good Merry Christmas and a happy New Year !!
Microsoft Azure IoT Hub with Java
Microsoft Azure の IoT Hub が Java でも利用できるということで試しました。Microsoft Azure の IoT Hub に関する詳細な説明はこちらをご参照ください。
Azure IoT Hub とは
IoT Hub と Event Hubs の比較
私がはまったのは1点で、「Device ID」をどうやって作るかという点でしたが、そこも下記にくわしく手順を記載します。
1. 最初に、Microsoft Azure の管理ポータルにアクセスし、新規から IoT Hub を作成します。
Microsoft Azure の管理ポータルへアクセス
「参照 >」から「IoT Hub プレビュー」を選択します。

「新規」ボタンを押下すると、下記の画面が表示されますので「Name」に名前を入力し、利用する規模に応じて価格やプランを選択してください。

次に、リソース・グループ名を新規に作成し、ロケーションとして「東アジア」を選択し最後に「作成」ボタンを押下してください。

2. Windows 環境で DeviceExplorer をインストール
Azure IoT SDKsのサイトにアクセスし、DeviceExplorer のインストーラを入手してください。Windows 環境用に用意されている「SetupDeviceExplorer.msi」をダウンロードします (このリンクから入手できる版は 2015-11-30 版です、最新版はAzure IoT SDKsから入手してください)。
ファイルを入手後、入手したファイル(インストーラ)をクリックしてインストーラを起動してください。

次に、インストール場所や利用者を指定し「Next >」ボタンを押下します。

確認画面が表示されますので、「Next>」ボタンを押下します。

ユーザアカウント制御の確認画面が表示されますので、「はい(Y)」を押下してインストールをはじめてください。

インストールが完了すると下記の画面が表示されますので「Close」ボタンを押下してください。

インストールが完了すると Windows 10 の場合、メニューから「最新追加されたもの」の欄から実行できることを確認できます。

3. Device Explorer から Device ID と接続用文字列を作成
メニューから DeviceExplorer を起動してください。起動すると下記の画面が表示されます。

ここで、DeviceExplorer から Microsoft Azure の IoT Hub に接続し操作できるように、Azure 上で接続用の情報を確認し取得します。Microsoft Azure の管理ポータルに接続し、作成した IoT Hub のサービスを参照してください。

IoT Hub サービスを参照すると「Settings」というボタンがあるので押下します。

「Settings」ボタンを押下すると「Shared access policies」のリンクがあるので選択してください。

「Shared access policies」の POLICY から「iothubowner」を選択してください。
選択すると「Connection string—primary key」の欄があります。記載内容をクリップ・ボードへコピーできるようにコピー・ボタンが右端に用意されていますので、これをクリックしてコピーしてください。

クリップ・ボードへ文字列がコピーされると「コピー済み」と表示されます。

文字列をコピーしたのち、Device Explorer に戻り、文字列を貼り付けてください。

文字列をコピーしたのち、「Update」ボタンを押下してください。正しく設定が更新されると「Settings updated successfully」という画面が表示されます。

続いて、Device Explorer のタブから「Management」を選択し「Create」ボタンを押下してください。

ボタンを押すと、下記の画面が表示されますので、「Device ID」欄にデバイス固有の名前を入力し「Create」ボタンを押下してください。(Primary Key,Secondary Keyは自動的にキーの文字列が入力されています。)

ボタンを押下すると下記の画面が表示されますので「Done」ボタンを押下してください。

デバイス ID を作成すると一覧に1行が追加されます。ここで、追加された行をマウスで右クリックしてください。すると、選択メニューが表示されますので、「Copy connection string for selected device」を選択して接続用の文字列をコピーしてください。

コピーして作成された、接続用の文字列の例は下記のような文字列です。この文字列は後からのプログラム内で記述する必要があります。そこで、この文字列を一時的にテキストファイルなどに保管しておいてください。
HostName=HOSTNAME.azure-devices.net;DeviceId=DEVICE-ID;SharedAccessKey=Wf0o****************************************
※ 補足:Device Explorer の詳しい使い方は下記に記載されていますので、こちらもご確認ください。
How to use Device Explorer for IoT Hub devices
4. Microsoft Azure IoT Hub サンプルコードの作成
それでは、プログラムを組むための環境設定や準備が整いましたので、実際にプログラムを書いてみましょう。本サンプル・アプリケーションは、基本的にこちらに記載されている内容を実際に動作させた物です。
※ 本記事の目的は、IoT Hub の設定方法を説明するのがメインのため、コードの詳細にまでは触れず、MS 社員のどなたかが作成したコードをそのまま記載しています。しかし、この一連の設定ができると色々と面白いことができるので、まずは基本的な手順を理解してください。
Maven の pom ファイルは下記のようになります。
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.yoshio3</groupId>
<artifactId>Azure-IoT-Hub</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>jar</packaging>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<maven-compiler-plugin-version>2.3.2</maven-compiler-plugin-version>
</properties>
<dependencies>
<dependency>
<groupId>com.microsoft.azure.iothub-java-client</groupId>
<artifactId>iothub-java-client</artifactId>
<version>1.0.0-preview.7</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>2.4.2</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
</execution>
</executions>
<configuration>
<finalName>${project.artifactId}-${project.version}</finalName>
<filters>
<filter>
<artifact>*:*</artifact>
<excludes>
<exclude>META-INF/*.SF</exclude>
<exclude>META-INF/*.DSA</exclude>
<exclude>META-INF/*.RSA</exclude>
</excludes>
</filter>
</filters>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.6</version>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<mainClass>com.yoshio3.Main</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
</plugins>
</build>
</project>
Java のサンプル・ソースコードはこちらになります。
package com.yoshio3;
import com.microsoft.azure.iothub.DeviceClient;
import com.microsoft.azure.iothub.IotHubClientProtocol;
import com.microsoft.azure.iothub.Message;
import com.microsoft.azure.iothub.IotHubStatusCode;
import com.microsoft.azure.iothub.IotHubEventCallback;
import com.microsoft.azure.iothub.IotHubMessageResult;
import java.io.IOException;
import java.net.URISyntaxException;
import java.util.Scanner;
public class Main {
protected static class EventCallback
implements IotHubEventCallback {
@Override
public void execute(IotHubStatusCode status, Object context) {
Integer i = (Integer) context;
System.out.println("IoT Hub responded to message " + i.toString()
+ " with status " + status.name());
}
}
protected static class MessageCallback
implements com.microsoft.azure.iothub.MessageCallback {
@Override
public IotHubMessageResult execute(Message msg,
Object context) {
System.out.println(
"Received message with content: " + new String(msg.getBytes(), Message.DEFAULT_IOTHUB_MESSAGE_CHARSET));
return IotHubMessageResult.COMPLETE;
}
}
public static void main(String... args) throws IOException, URISyntaxException {
//Device Explorer で作成してコピーした接続用の文字列をここに記載
String connString = "HostName=HOSTNAME.azure-devices.net;DeviceId=DEVICE-ID;SharedAccessKey=Wf0o****************************************";
IotHubClientProtocol protocol = IotHubClientProtocol.AMQPS;
DeviceClient client = new DeviceClient(connString, protocol);
MessageCallback messageCallback = new MessageCallback();
client.setMessageCallback(messageCallback, null);
client.open();
for (int i = 0; i < 10; ++i) {
String msgStr = "Event Message " + Integer.toString(i);
try {
Message msg = new Message(msgStr);
msg.setProperty("messageCount", Integer.toString(i));
System.out.println(msgStr);
EventCallback eventCallback = new EventCallback();
client.sendEventAsync(msg, eventCallback, i);
} catch (Exception e) {
e.printStackTrace();
}
}
System.out.println("Press any key to exit...");
Scanner scanner = new Scanner(System.in);
scanner.nextLine();
client.close();
}
}
念のため、Maven プロジェクトは Git Hub にもあげておきます。上記をベースに、Microsoft Azure IoT Hub Java Client 1.0.0-preview.7 API を参照しながらプログラムを作ってみてください。
5. デバイスでプログラム実行
プログラムをビルド後、下記のコマンドを IoT デバイス上で実行してください。
# java -jar Azure-IoT-Hub-1.0-SNAPSHOT.jar
実行すると、下記のようなメッセージが表示されます。
|
$ java -jar Azure-IoT-Hub-1.0-SNAPSHOT.jar Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8 12 15, 2015 5:27:38 午後 org.apache.qpid.proton.engine.impl.ssl.SslEngineFacadeFactory getClass 警告: unable to load org.bouncycastle.openssl.PEMReader 12 15, 2015 5:27:38 午後 org.apache.qpid.proton.engine.impl.ssl.SslEngineFacadeFactory getClass 警告: unable to load org.bouncycastle.openssl.PasswordFinder 12 15, 2015 5:27:38 午後 org.apache.qpid.proton.engine.impl.ssl.SslEngineFacadeFactory 警告: unable to load bouncycastle provider Event Message 0 Event Message 1 Event Message 2 Event Message 3 Event Message 4 Event Message 5 Event Message 6 Event Message 7 Event Message 8 Event Message 9 Press any key to exit… IoT Hub responded to message 5 with status OK_EMPTY IoT Hub responded to message 4 with status OK_EMPTY IoT Hub responded to message 7 with status OK_EMPTY IoT Hub responded to message 2 with status OK_EMPTY IoT Hub responded to message 3 with status OK_EMPTY IoT Hub responded to message 6 with status OK_EMPTY IoT Hub responded to message 1 with status OK_EMPTY IoT Hub responded to message 9 with status OK_EMPTY IoT Hub responded to message 0 with status OK_EMPTY IoT Hub responded to message 8 with status OK_EMPTY |
参考:
Microsoft Azure IoT device SDK for Java
IoT Kit ハンズオン トレーニング 初めの一歩モノの接続からデータ分析まで by @embedded_george
最後に、今回は実戦的なアプリまでは作成しませんでしたが、上記をベースに Raspberry Pi や LEGO Mindstorms 上にプログラムを配置し、Azure 上にデータを配信したり、Azure から各種デバイスを操作したりできるようになりますね。
Let’s enjoy IoT with Java on Azure !!
Microsoft Java DevOps ハッカソン@JJUG CCC 2015

JJUG CCC 2015 Fall が2015年 11月 28日 (土) にベルサール新宿グランド(東京都新宿区西新宿8-17-3 住友不動産新宿グランドタワー) で開催されます。
今回、日本マイクロソフト株式会社は JJUG CCC にプラチナ・スポンサーとして参加し、Java の開発者と運用者による DevOps ハッカソンを2日間で実施します。このハッカソンは過去2度程実施していますが、いずれの参加者も参加してよかった他の方にもぜひお勧めしたいといわれている、とても有意義なハッカソンです(下記の参加レポートをご参照)。
みなさま、Microsoft Azure のプラットフォーム上で、 Jenkins や今はやりの Docker などを利用して 継続的インテグレーションやデリバリ(CI や CD)を体感してみませんか?今回は、JJUG との共催という事で、開発者は Java デベロッパーのみなさまが対象となります。
参加のご登録はコチラから
■ 開発者の方はコチラ
■ インフラ技術者の方はコチラ
( ※ 参加可能な人数に限りがあるため、JJUG CCC の参加登録とは別途、登録サイトをご用意しています。JJUG CCC の参加登録はコチラから行ってください。)
ご案内文
DevOps はソフトウエアデリバリのライフサイクルを早める考え方で、短期間で開発、 運用を繰り返し、一日に5 回以上新しいサービスをリリースする企業も出てくるなど、DevOps のビジネス価値、効果は昨今たいへん注目されています。
しかし DevOps が何を指すのかは人やベンダーによって言うことがまちまちで、その多くはツールのみの話に終始していますが、ツールは DevOps の要素のひとつであり、実際は人、プロセス、さまざまな要素が関係します。
アプリケーション開発者、そしてインフラ技術者でチームを構成し、DevOps のプラクティスを適用して、Infrastructure as Code の自動化技術を使いながら本物のDevOps が体験できるイベントを企画しました。
ぜひ奮ってご参加ください。
過去に開催した DevOps ハッカソンの参加レポートは下記にリンクしています。
● メディアの記事
http://codezine.jp/article/detail/8944
http://www.atmarkit.co.jp/ait/articles/1509/10/news168.html
● 参加者のブログ
http://heartbeats.jp/hbblog/2015/09/microsoft-devops-hackathon.html
http://blog.modd.com/entry/2015/09/07/151421
http://changesworlds.com/2015/09/devops-hackathon-day-2-done/
http://newscentral.exsees.com/item/2e7e6c6899c626e2baddb7cdeaaed62d-d28352a527a1d995287ddd23891859aa
参加のご登録はコチラから
■ 開発者の方はコチラ
■ インフラ技術者の方はコチラ

