Язык и технология Java сейчас, возможно, наиболее используемая во всем мире. Она работает и на интернет-серверах, и на домашних компьютерах, и на мобильных телефонах. В Oracle уверяют даже, что Java работает на марсоходе. Однако процесс слияния Oracle и Sun Microsystems затормозил ее развитие. Тем не менее, как заверил Хенрик Шталь, старший директор по продуктовому маркетингу штаб-квартиры Oracle, корпорация заинтересована в дальнейшем развитии Java — это сообщение было сделано на конференции JavaOne, совмещенной с Oracle Develop, которая прошла в Москве 12-13 апреля. Всего, по оценкам Шталя, во всем мире на Java работает 7 млн разработчиков.
Создатели Java изначально ориентировались на виртуализацию и переносимость кода приложений. Это позволяет строить гетерогенные облака, узлы которых могут использовать различные процессоры и операционные системы. И уже есть достаточно много приложений, которые предназначены для работы в таком облаке.
Основу для построения Java-облака составляет сервер приложений и спецификация Java EE (ее текущая версия — 6). Oracle выпускает собственный сервер Java-приложений, который называется GlassFish. Есть его бесплатная версия, она, в частности, распространяется со средством разработки NetBeans и может интегрироваться с такими средами, как Eclipse и IntelliJ. Впрочем, компания предлагает и коммерческую версию данного продукта, включающую в себя дополнительно и систему управления кластерами. Это, собственно, и есть инструмент для создания облака. Пока поддержка распределенных вычислений реализована только в этом продукте, однако Oracle готовит новую спецификацию Java EE 7, которая уже будет ориентирована на создание облачных приложений.
Развиваются и технологии самой виртуальной машины Java. Перед Oracle стоит задача объединить две виртуальные машины: HotSpot, разработанную в Sun Microsystems, и JRockit, принадлежавшую самой Oracle. Базовой виртуальной машиной станет HotSpot, в нее со временем будут добавлены некоторые функции JRockit, такие как контроль работы виртуальной машины, своеобразный бортовой самописец, фиксирующий события в случае «обвала» приложения, и паузы. В частности, будет разработана версия виртуальной среды, которой не будет нужна операционная система. Фактически это будет гипервизор, работающий без операционной системы.
Кроме того, в Oracle взяли курс на поддержку динамических языков в Java, таких как Perl, Python, PHP и др. Теперь код на Java будет включать фрагменты на этих языках. Причем программы для них будут также преобразовываться в байт-коды и оптимизироваться наравне с кодами самой Java. Также Oracle планирует внести в Java функции по прямому взаимодействию с SQL. В результате в Java-облако можно будет перенести уже существующие разработки на указанных языках. И не исключено, что Java окажется наиболее удобной технологией для организации распределенных вычислений самых разных типов.