Вопрос

Чтобы сэкономить сетевой трафик, я бы хотел сжать свои данные.Единственный трюк заключается в том, что у меня клиент - это приложение на c, а сервер - php.Я ищу библиотеку сжатия с открытым исходным кодом, доступную как для c, так и для php.

Я думаю, я мог бы написать внешнее приложение на c для распаковки моих данных, но я пытаюсь избежать появления дополнительных процессов на сервере.

Если вы знаете о чем-нибудь таком, пожалуйста, опубликуйте это!

Это было полезно?

Решение

Zlib предоставляет API-интерфейсы C, а также является частью функционального API PHP.

Другие советы

gzip - одна из самых (если не самая) популярных схем сжатия.PHP имеет поддерживается с версии 4.Если вам нужно еще лучшее сжатие, рассмотрим bzip2.

Php поддерживает сжатие zlib и для сжатия c вы могли бы использовать zlib, но вам следует еще раз подумать, если вы хотите сжать сетевое взаимодействие - нагрузка, вероятно, будет слишком большой для ваших серверов.

Вероятно, вы можете поручить своему веб-серверу сжимать данные для вас на уровне HTTP, и тогда вам не придется беспокоиться об этом ни на том, ни на другом конце.Для Apache взгляните на mod_deflate мод_отражать.

это зависит от того, какие данные вы передаете.Если это текст, используйте mod_gzip в apache (я предполагаю, что вы используете его).Я видел около 70% сжатия текста с помощью этого.Но если вы имеете дело с двоичными данными, такими как изображения и видео, используйте медиаформаты, которые более сжимаемы.

ZLIB

Вот эта страница о доступе к zlib из PHP.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top