• WEB-программирование. Что выбрать и с чего начать?

    Да будут благословенны те, кто молча, и без единого комментария сливает карму. :)
  • PHP Cluster и файлы сессий на общем файловом хранилище. Возникают бесконечные блокировки?

    ой ё… Я как чувствовал что без асинхронных запросов тут не обошлось… И советовать рефакторить, чтобы не было инициализации сессии без необходимости конечно же неуместно? Или реально?

    Пробуйте неблокирующие транзакции.

    Может таки совет выше с закрытием при r/o поможет.

    Над балансировщиком крепко подумайте.

    Вообще чую у вас файловая система перестраховывается, и не дает другому ip открыть файл когда он уже открыт одним ip, а в рамках одного ip она позволяет открыть несколько раз для чтения…
  • PHP Cluster и файлы сессий на общем файловом хранилище. Возникают бесконечные блокировки?

    Я тоже понимаю, что раз один сервер прекрасно работает, то сессии освобождаются, но мы имеем дело с необычным поведением, и значит ошибка где-то перед носом. Так что не стоит полагаться на логику — сразу ведите логи. Попробуйте сохранить один лог открытия/закрытия сессий в одном файлике с обоих серверов, с сохранением времени в микросекундах, номера сервера и запрошенного урл. Создайте два лога — с одним сервером и с двумя. Высокая вероятность что такие логи покажут проблему.

    И еще — вы никак не обосновали необходимость принятия запросов от одного пользователя на разные сервера. 100% это разрешит проблему — так или иначе. И я реально не могу придумать сценарий при котором ipvs был бы нежелательным. Для живучести сессий при потере одного из серверов (корзина там, или процесс прохождения теста, не важно) и/или смене ip пользователя в принципе должна сохраняться за счет общего файлового хранилища. Просто настройте ttl для ipvs достаточно маленьким…
  • Ищу алгоритм анализа нетривиальных данных

    Интересная идея.
    Не подскажете как вы это сейчас анализируете?
    У меня было пару мыслей, хотелось посмотреть на некоторые спектры, и немного с ними поиграться, но я как-то не сообразил как мне увидеть этот самый скользящий спектр и фазу.
    преобразование Фурье и вейвлеты помню, но чего-то мне не хватает. Какого-то понимания, чтобы картинка стала на место.
    Подскажите с чего начать?

    ПЫСЫ: контекст — есть гипотеза, что если заменить звуковой канал визуальным, то при удачном визуальном кодировании глухие смогут не только слышать, но и даже разговаривать. Ведь для глухого проблемы с речью связаны с отсутствием обратной связи — известно, что если человек потерял слух умея разговаривать, то его речь начинает ухудшаться и быстро превращается в непонятную. В общем направление мысли думаю понятное, но с какой стороны к нему подойти, да как создать такие чудо-очки — не понятно. Не понятно даже насколько это реально.
  • Автоматическое закрытие файлов

    Mendel
    @Mendel Автор вопроса
    Да я то везде закрываю. Это мне еще в школьные годы привили.
    Останавливает не от того, чтобы закрывать а от того чтобы искать где оно не закрыто.
    Останавливает потому что версия хостера кажется неправдоподобной. Я потрачу два дня времени, чтобы убедится что ничего не нашел.
    Ведь незакрытие файлов это должна быть жестокая бага со стороны апача/пхп.

    т.е. вы утверждаете что таки будет такая утечка ресурсов? а пруф на это можете дать?
    В моих скриптах оно врядли, но может что-то из того, что у меня стоит не совсем экологично.
  • Sсhemaless для MYSQL, как?

    Mendel
    @Mendel Автор вопроса
    Добавление поля в боевую таблицу с кучей данных да еще и в неприспособленных для этого базах (mongo тот же даже не понял бы проблемы) конечно же делать не стоит. Но в таких ситуациях когда это может занять часы это продумывается заранее…

    Ваши утверждения про noSQL имеют очень небольшую долю здравого смысла, и очень много иллюзий, потому что мало знакомы с их идеологией. Я раньше почти так-же рассуждал. Ну только без крайностей конечно… Но познакомившись с идеологией понял что оно того стоит.
  • Sсhemaless для MYSQL, как?

    Mendel
    @Mendel Автор вопроса
    Ну у меня есть схема в скрипте, но она чуть более гибкая…
    Меня интересует именно этап установки. Идея в том, чтобы оставлять структуру там, где ей и место, т.е. в каждом конкретном модуле и т.п… Чисто необходимость создавать структуру заранее вызывает необходимость держать структуру в одном и том же месте… плюс как-то отмечать какое из описаний приоритетнее (в некоторых модулях одно и тоже поле может быть скажем строка, а в другом месте это поле с фиксированными вариантами выбора, случай редкий но возможный).
    А так — в момент обращения уже известна структура. Да и модули которые реально не используются — не будут плодить под себя таблицы… Альтернативный, более правильный вариант — проверять наличие нужных таблиц и их структуру ДО запроса…
    Такое решение было бы хорошим для питона, ибо там скрипт запускается целиком, а не для каждой страницы, но неприемлемо для пхп, где каждый запрос отдельно обрабатывается… нет, можно сохранять состояния, но где? На диске? Лишние права, лишние риски… В сессии? Тоже криво… вот и думаю. Самому не нравится идея использования ошибок не по назначению, но… Сейчас склоняюсь к компромису — первым запросом делать список таблиц у базы, и уже исходя из него делать создание или несоздание структуры базы при записи или возврат пустого ответа при чтении… А уже несоответствие структуры отрабатывать как workarraund. По идее таких случаев быть не должно или быть очень редко, и тут уже исключение/ошибка уместны…
  • Sсhemaless для MYSQL, как?

    Mendel
    @Mendel Автор вопроса
    Это проблема популярности скрипта в первую очередь.
    Скрипты которые слишком требовательны — не слишком популярны.
    Если писать что оптимально такое-то окружение, но мы стерпим и такое, то это уже получше…
  • Как вы жили до «бума» социальных сетей?

    В принципе согласен, хотел написать тоже самое… но согласитесь есть большая разница в скорости доставки.
    Когда знаешь что твое сообщение прочитают через сутки, и ответят тебе через двое думаешь над каждой фразой втрое больше…
    Ну и принцип того что каждый сисоп знал своего поинта, и в той или иной степени отвечал за него тоже многое меняло… и личные связи всех узлов в сети тоже не на последнем месте были… все иначе было. И не в форме подачи информации, это мелочи… а именно на уровне психологии.
    Даже вот такие мелочи… Меня как-то мой знакомый модератор (по сегодняшнему администратор) забанил в одной эхе (типа форума). Так сообщения распространялись так медленно, что я успел и сам на своей ноде (узел доступа, типа минипровайдера) его забанить и всех аплинков обзвонить чтобы его забанили, и на другие ноды позвонил через которые он мог выйти… и это все через домашний телефон, мобилок почти ни у кого не было еще… И сообщение не дошло, и бан не сработал. И пришлось ему со мной договариваться… но то другая история… я просто про динамику говорю, сейчас всё так бешенно, что даже представить себе сложно такие приколы…

    Контент тоже был не такой разбавленный как сейчас, с миллионами перепостов фекалий…
  • Sсhemaless для MYSQL, как?

    Mendel
    @Mendel Автор вопроса
    Покажите мне как на шаредхостинге поставить MongoDB ))))
    У многих хостингов даже INNODB нет.
  • Sсhemaless для MYSQL, как?

    Mendel
    @Mendel Автор вопроса
    Join это чтение.
    Если нехватает, то и фиг с ним… грубо говоря NULL.
    А при записи все равно будет так или иначе указано в какую таблицу писать. Там и поймаем.
  • Sсhemaless для MYSQL, как?

    Mendel
    @Mendel Автор вопроса
    Спасибо, исправленно.
  • Sсhemaless для MYSQL, как?

    Mendel
    @Mendel Автор вопроса
    Мельком посмотрел, интересно. Похож на мой…
    Разберу потом, посмотрю что там внутри, спасибо за ссылку.
  • Зацикливание в мод_реврайт?

    Mendel
    @Mendel Автор вопроса
    А кто это потом читать будет? Оно и так Вуду…
  • Зацикливание в мод_реврайт?

    Mendel
    @Mendel Автор вопроса
    Виндоус: Всё что не запрещено — разрешено. Юникс: все что не разрешено — запрещено.
  • Зацикливание в мод_реврайт?

    Mendel
    @Mendel Автор вопроса
    Недостатки Вашего решения:
    1 — мы палим злоумышленнку какие у нас есть файлы. К примеру какие установлены плагины а какие нет.
    2 — некоторые php-файлы лучше не вызывать напрямую. Особенно если это фреймворк и ты не знаешь какой кодер что впихнул в тот или иной файл.
    ====
    ПЫСЫ: Я вообще еще не решился оставлять этот виндоус-like вариант или роутить «всё кроме....»
  • Зацикливание в мод_реврайт?

    Mendel
    @Mendel Автор вопроса
    RewriteCond %{REQUEST_FILENAME} !^index\.php
    RewriteRule ^.*\.php$ /index.php [L,QSA]
    

    Не помогло.
  • Зацикливание в мод_реврайт?

    Mendel
    @Mendel Автор вопроса
    Пробовал — не помогает.