Перегляд за місяцем: October 2009
Деякі відмінності між Verity та Solr
Реймонд Кемден в формі конспекту розповів про ключові відмінності між новим пошуковим двигуном Solr для CF9 та його попередником -- Verity.
Серед основних можна відмітити значне покращення швидкодії, зникнення обмежень на розмір індексу, уніфікацію пошуку за регистром -- завжди в нижньому, зміни в синтаксисі запитів (+/- замість AND/NOT), заборона використання шаблонів (?/*) на початку запиту, відмова від previousCriteria -- але QoQ нікуди не дівається.
Трохи детальніше про ці та інші зміни в замітці Кемдена.
Adobe ColdFusion 9 хостинг від Hostek.com
Компанія Hostek.com одною з перших запропонувала CF9 хостинг. Я не великий шанувальник shared-хостингів для CF, але треба відзначити їхню оперативність та доступність тарифних планів. Крім цього, вони мають доволі м'яку політику щодо заборон синтаксису CFML та ряд додаткових пропозицій.
Снижение цен от Adobe
Не совсем Coldfusion-новость, но все равно интересно. Adobe снизит цены на локализованные украинские версии продуктов из линейки CS4. Новость читайте тут. Нам бы еще Билдер задешево !
Начало работы с MachII+Coldspring
Интересующийся разработчик знает, что для Coldfusion существует стопятьсот фреймворков (навскидку Fusebox, Mach II, Coldbox, FW/1), и в настоящее время без фреймворка начинать разрабатывать просто некошерно. На страницах нашего уютного бложека мы попробуем освещать популярные фреймворки. Для затравочки начну с описания Mach II, с самого начала работы с ней (ним ?).
Начало работы с Mach II взято из этой статьи (via) с небольшими изменениями. Все сводится к этому:
1. скачать и развернуть код собственно Mach II, Dashboard и Coldspring, добавить маппинги в CF Administrator:
- /coldspring
- /MachII
- /MachIIDashboard
Код этих трех я расположил вне корня веб-сервера и настроил маппинги, чтобы все проекты использовали одну версию фреймворка и чтобы Mach II не путался под ногами в корневой папке.
2. Код Skeleton развернуть в корень веб-сервера.
3. В файле /skeleton/config/mach-ii.xml подправить:
а) раскомментировать подключение Coldspring (mach-ii_coldspringProperty.xml) в разделе includes
б) добавить модуль с Dashboard
в) изменить свойство applicationRoot в разделе properties
г) открыть сайт в браузере и радоваться.
Упомянутый в статье баг CF 9 № 78588 починен и MachII полноценно работает под CF9 без всяких "но и если".
Що обрати для Client Storage: Registry чи Datasource
Марк Кругер докладно розповів про те, чому потрібно запобігати використанню реєстру для зберігання клієнтських змінних (client variables).
Він навів приклад, коли за кілька місяців (за умовчанням 90 днів) Adobe ColdFusion починає періодично очищувати реєстр (знову-таки, за умовчанням кожні 67 хвилин), що призводить до несподіваних "залипань" сервера.
Цікаво, що ця проблема стосується й Linux, де реєстр просто емулюється в текстовому файлі (/coldfusion8/registry/cf.registry).
Він слушно зауважив про те, що напевно запобігти використанню цих змінних дуже складно, навіть якщо розробник запевняє, що не користується ними.
Тож він пропонує використати окрему базу (MySQL чи SQL Server цілком підійдуть) та відповідне джерело даних (datasource) для зберігання клієнтських змінних -- з прикладами, та наводить кілька порад щодо ефективного використання цьго методу.
Насамкінець він розповідає про кілька проблем, що можуть спіткати на шляху впровадження цієї оптимізації, особливо коли це стосується налаштувань вже робочого серверу.
Про все це докладно та з прикладами читайте в дописі Марка.
Випущено JavaLoader 1.0 Beta
Хороші новини для тих, хто полюбляє поєднувати Java та ColdFusion розробку.
Розробник JavaLoader повідомив про те, що продукт наближається до релізу, а саме пішов у бету.
Також він запрошує долучитися до групи javaloader-dev.
Приєднуйтесь до CF спільноти!
Питання участі в житті спільноти є актуальним не тільки для українських (але для місцевих - особливо), але й для світових розробників. Діяльність лише невеликої частки розробників створює ілюзію неактивності спільноти взагалі, це визнають навіть євангелісти.
Для того, аби допомогти бажаючим долучитися, Браян Рінальді написав Керівництво Adobe розробника з онлайн груп та ресурсів. Треба зауважити, що воно розповідає також про Flex ресурси, тому й має таку назву.
На щастя, світ ColdFusion (як технології) хоч і залишається Adobe-центричним, але має багато незалежних аспектів: блогів, груп користувачів, конференцій.
Про деякі з них можна знайти інформацію й на нашому сайті.
Насправді, це не тільки просто, але й допомагає тримати себе в програмістському тонусі, розвиватися разом зі спільнотою і просто дізнаватися про купу цікавинок та класних штук, що з'являються в світі CF :)
Новини CF-OpenSource v6
Нові продукти та оновлення
Система для програмного керування налаштуваннями CF сервера, такими як датасорси, мапінги, шляхи до кастом теґів. Підтримуються Adobe ColdFusion 7/8/9 Railo 3.1, OpenBD 1.1
cfUpdater - Manager for ColdFusion Updates
Компонента для спрощення процесу оновлення Adobe ColdFusion версій 7/8/9
Конвертація Google Trends RSS в CFML масив.
Рання альфа компоненти для взаємодії CF з Trac (популярною системою баґтрекінгу з wiki).
Клієнт на Python + CFML скрипти, що дозволяють інтерактивно виконувати CFML код в консолі. Дещо сумнівна щодо практичної користі, але цікава розробка.
Утиліта для міграції блогу з Wordpress на BlogCFC.
Проста в користуванні (як запевняють розробники) реалізація Factory (автоматизоване створення об'єктів) для CFML.
Інтеграція Yahoo Maps в CF додатки, написана одним з членів команди Adobe ColdFusion.
Можливість записувати debug output до файлів - якщо він потрібен, але показувати його небажано, фактично розширення наявної (і доволі кострубатої) системи журналювання.
Невеличкий фреймворк для пришвидшення розробки додатків з ORM.
Реалізація додатку для перевірки правопису в textarea на CFML.
Різні новини зі світу OSS
ColdFusion on Rails is almost here
Кріс Пітерс повідомив про те, що реліз 1.0 CF on Wheels вже близько.
Створено Гугл-групу для Ant4CF.
ColdBox 3.0.0 Beta 2 Released!
Популярний фреймворк наближається до релізу. Що нового третій версіі можна дізнатися з wiki проекту.
Убезпечення контексту Railo з IIS та Apache
Джеймс Аллен (James Allen) наводить поради як закрити Railo Administrator від небажаного доступу, пропонуючи зробити це засобами IIS.
Натомість Піт Фрейтаґ (Pete Freitag) рекомендує закрити увесь railo-context засобами Apache. Треба зауважити, що це актуально у тому випадку, якщо не використовуються cfform, cfchart та інші речі, котрі потребують вільного доступу до контексту.
Hack My CF
Брайан Рінальді з Foundeo Inc., про якого ми вже згадували в повідомленнях, присвячених безпеці, запустив ще один цікавий проект: Hack My CF.
Ввівши доменне ім'я та електронну скриньку (котра має знаходитися на тому ж домені -- що не дуже зручно, але має певний сенс), HMCF робить ряд запитів до вашого сайту та перевіряє його на наявність певних вразливостей, в тому числі XSS та інших. Повного списку тестів, на жаль, не надано. Напевне розробники залишили собі заділ для комерційних послуг зацікавленим власникам сайтів. Результати тестів будуть надіслані на вказану скриньку.
Запуск Coldfusion Builder Beta 2 под Linux
Вот здесь по ссылочке есть описание как сделать из своей эклипсы-под-линухой Coldfusion Builder. Остается пожелать чтобы Flex Builder кто так же раскурочил !
Заливка по FTP из Coldfusion Builder
Заливать файлы на сайт можно прямо из ColdFusion - удобно и просто.
На закладке File создайте профиль FTP-сервера:

Из вкладки Navigator нажмите правой клавишей на проекте и выберите Synchronize - Create New Synchronize Connection. Выберите созданное FTP-соединение.

Теперь в меню Synchronize появится несколько новых опций - Synchronize, Upload, Download. Заливать можно как отдельные файлы, так и целые папки. За ходом процесса можно наблюдать в окошке Console.

Видео с Adobe Max 2009 выложено на Adobe TV
Только закончился Adobe Max 2009, а презентации уже доступны на Adobe TV. Для них выделен отдельный канал, который разделен на три части - Design (очевидно, для дизайнеров), Develop (для менее художественно-одаренных) и Envision (для еще менее руководителей бизнеса).
А также небольшое пиратское видео - презентация Rome (графический пакет написанный на AIR), но это не главное: в левом нижнем углу можно заметить приглашенного гостя - Марка Хэммилла, сами знаете кого сыгравшего в лучшем фильме всех времен и народов
Підхід до розгортання сайту на базі Fusebox 5
В нетрях обговорення груп Railo виявив пару повідомлень, інформацію з котрих варто зберегти на майбутнє. В них наводиться спосіб оновлень живого сайту на базі Fusebox 5.
Основною проблемою, що треба вирішити, це генерація parsed файлів при одночасному доступі кількох (багатьох) користувачів. Це є відомим недоліком FB, котрий поки що не було остаточно виправлено. Суть його в тому, що при конкурентному доступі FB може записати "криві" файли (наприклад, недописані, коли <cfif> не закривається), через які весь додаток перестає працювати, видаючи незрозумілі й кожного разу різні помилки CFML синтаксису.
Тут є дві речі, що варто пам'ятати.
1. Необхідно завжди вмикати production mode на живому сайті. Незважаючи на очевидність кроку, це вельми розповсюджена помилка. Бо в development режимах FB генерує ті чи інші файли, що значно підвищує вірогідність виникнення помилок. Не кажучи вже про те, що сповільнює роботу сайту.
2. Варто тримати три робочі копії проекту.
Перша -- повноцінна розробницька версія, з відповідним development режимом, типово локально у розробника.
Друга -- живий сайт, з production режимом та всіма відповідними налаштуваннями.
І нарешті третя копія, призначення тільки для розгортання (deployment). Вона розміщується окремо від основного сайту (на тому самому сервері) та призначена для безпечного генерування parsed файлів (для великих проектів може займати кілька хвилин), котрі потім гуртом копіюються прямо на живо. Цю операцію варто повторювати при кожному оновленні, принаймні коли змінюються файли, що знаходяться під контролем Fusebox'у.
У випадку зміни ланцюжків (circuits) може потребуватися запустити основний сайт з fusebox.load, щоб він їх "підхопив".
На щастя, цей процес цілком можна автоматизувати, наприклад за допомогою Ant.
Примітка для користувачів Railo: deployment та production копії варто тримати ізольованими в різних веб-контекстах, хоча саме ядро Fusebox може бути те саме, достатньо використати мапінги (mapping) для контекстів.
Внезапно...
...Adobe выпустила релиз Coldfusion 9, хотя по данным нашей неторопливой агентуры этого не должно было произойти раньше 2010. Наказав нерадивых корреспондентов лишением бесплатной сауны и спортзала, редакция CFUG поздравляет всех разработчиков Coldfusion и на Coldfusion с могучим 9м выпуском. Кого поименно благодарить, product manager Адам Леман (Adam Lehman) называет в своей благодарственной речи по случаю выпуска. Наверное, если б не Adobe Max, релиз не состоялся бы сегодня, а так будем следить за ходом конференции, что интересного расскажут о "девятке".
Запущено RailoAjax.org
Сьогодні сталася ще одна добра подія для спільноти.
Андреа Камполоньї (Andrea Campolonghi) повідомив у гугл-групі Railo про те, що вийшов на інтернет-орбіту RailoAjax.org. Як помітно з назви, проект призначено для втілення cfajaxproxy, cfdiv and та інших RIA-фішок.
За клієнтську взаємодію відповідає jQuery, за серверну, вочевидь, CFML.
Варто додати, що проєкт має вікі та трекер на базі Trac: docs.railoajax.org
Merlin в публічній беті
Мерлін (Merlin) -- це система, що базується на AIR, призначена для керування сервером Adobe ColdFusion версій 7,8,9.
На даний момент вона в публічній беті, реліз обіцяють приблизно одночасно з виходом дев'ятки.
Дізнатися більше про неї можна з ґрунтовного скрінкасту від розробників, а заповнивши невеличку форму, й скачати дистрибутив з офіційного сайту.
І на додаток, просто ще один сайт на CF. Дружина Адама Лемана запустила в бету рекомендаційний сервіс Interfolio. Звісно, що написаний на CFML.
