[Форум] [Помощь] [Поиск] [Выйти] |
Добро пожаловать, User |
|
|
| ||
Возникла необходимость написать одну софтинку. ТЗ: 1. Софтина в ходе работы обращается к удаленной базе MySQL. База, естественно, находится на каком-то далеком хосте, доступ по идее на порт 3306, но: 2. Доступ на этот порт закрыт. Неважно где и неважно как, но закрыт. Есть обходной маневр - есть доступ на SSH, можно организовать ssh-туннель. По отдельности (PuTTY + EMS MySQL MAnager (респект Саньке!)) все работает хорошо. А вот как бы это все свести в одну программу? Писать надо на Delphi (софтина стоять будет у клиента) а не на PHP (не на сервере). Подскажите, пожалуйста, как подступиться к этой очень нетривиальной задаче? |
| ||
XML Web Services |
| ||
По сути Паша прав. Это технология будущего, видимо. Если это пугает, то можешь попробовать написать простенького транслятора на стороне сервера, который будет запускаться при логине на SSH и тупо фигачить все, что приходит в дальнейшем на вход консоли туда, где MySQL. Хоть на 3306 тот же. Тогда останется только сделать SSH-логин и туда это что-то подавать. Я, кстати, не знаю что такое EMS MySQL MAnager - возможно, это такой транслятор и есть.. Но тогда остается всего лишь SSH-клиента написать, который будет оболочкой передаваемых команд, в чем вопрос... Но, повторюсь, Паша прав. В вопросах типа Софтина работает с удаленной базой, но доступа напрямую нет по причине файрволла в этом году (да и в прошлом тоже) правильный ответ - XML Web Services :) |
| ||
Послушайте сертифицированного разработчика приложений ;-) На самом деле в привате было решено написать php-страничку, которая на вход будет принимать sql-запрос, а на выходе генерить данные в xml :-) Придётся парсить их вручную. Видел пару библиотек для работы с SOAP на php (NuSOAP и PEAR::SOAP). Первая работает как-то глючно, вторую мне пока так и не удалось уговорить хостинг-провайдера установить. То есть она идёт вместе с php, а унас последняя версия, она есть... Но ничего не работает :-) Придётся кучу include'сов править в исходниках, чего бы очень не хотелось. |
| ||
На PERL легко установить SOAP-модуль было... А дальше - дело библиотеки ;) Фишка в том, что так вам руками придется парсить и генерить XML, а клиента SOAP можно найти без проблем ;) |
| ||
организовать ssh-туннель а что, форвардинг не будет работать? |
| ||
видел как Пашка шаманит в php'шным SOAP клиентом. имхо перловый SOAP::Lite рулит :) |
| ||
Локально-то я PEAR легко установил. Просто в стандартную поставку пхп 4.3.х какой версии не входит SOAP, Mail_Mime, Net_Request etc А вот заставить админа ето поставить, это сложно. |
| ||
Я тоже видел. Выводы, в принципе, те же ;) |
| ||
:-) |