2015-03-16 22 views
1

Я разработал сайт чата, который использует обратный аякс/COMET с php backend и работает очень хорошо, но когда я запускаю страницу на двух параллельных вкладках того же браузера, ответ замедляется, потому что вторая вкладка ожидает, что первая вкладка завершит выполнение, а затем 1-я вкладка ждет второго. В результате сайт действительно замедляется.Как запустить кометный чат на параллельных вкладках

Таким образом, PHP не поддерживает одновременное выполнение. Как исправить эту проблему?

ответ

0

Вы должны понимать, что PHP является серверной, а Javascript - клиентской. Ваш браузер работает на стороне клиента, который теоретически работает на компьютере A, в то время как PHP-код, который является серверным кодом, выполняется на компьютере B. В результате не имеет значения, открываете ли вы n вкладок в одном браузере для запуска страницы или открытия n разных браузеров. PHP должен работать без проблем, две вкладки не должны влиять на масштабируемость. Я считаю, что у вас есть одна или несколько ошибок в коде, что приводит к этой проблеме.

+0

благодарит вас за четкое объяснение ... Хорошо, я не могу быть мастером php, как вы, но какая ошибка на клиентской стороне, которая влияет на другую вкладку? Когда я запускаю сайт в двух разных браузерах, он работает хорошо, недавно я узнал что-то, называемое pthread, которое, похоже, является решением этой проблемы, но мне нужно знать об альтернативах. можете ли вы помочь мне диагностировать ошибку? мой сайт в сети, я был бы рад, если сможешь. –

+0

Я рад помочь. Важно уточнить, что ваша клиентская сторона - это Javascript и CSS. Javascript не многопоточен, поэтому, если ваша проблема кроется на стороне клиента, у вас, вероятно, есть проблема с вашим кодом Javascript. Кроме того, если создаваемый HTML слишком велик, это может вызвать проблемы. Я считаю, что вы должны отредактировать свой вопрос и добавить код, чтобы мы могли получить дополнительную информацию о проблеме. Пожалуйста, добавьте только соответствующую часть кода. –

+0

Я добавил систему уведомлений, пожалуйста, проверьте. –