Ну, я не берусь за математичность всего, что я сверху навертел, если что, то я не совсем проснулся. Самое главное, что отсылать integer'ы и прочее так как они представлены в памяти неэкономно выходит и самый лучший метод, который мне идёт в голову - отсылка чисел набором алфавитно-цифровых знаков гадок своей противной нехваткой до 2**6.
Могу себе легко позволить любой способ отсылки (не веб форма же у меня).
Короче: кто знает, как компактно можно отсылать цыфири к php-скрипту, объясните, пожалуйста.
Спустя 24 минуты, 30 секунд (28.11.2009 - 01:52) S{oRpiO написал(а):
непомню точно но вроде как все данные идут через переменные
Спустя 1 день, 20 часов, 57 минут, 56 секунд (29.11.2009 - 22:50) supaplex777 написал(а):
Нет, переменные можно не использовать, а вносить данные в строку запроса после символа ? и тогда данные окажутся в переменной $QUERY_STRING в скрипте, но это неважно. Я спрашиваю, есть ли хороший способ сжато передавать числа в http-запросе?
Спустя 18 минут (29.11.2009 - 23:08) sergeiss написал(а):
Цитата (supaplex777 @ 29.11.2009 - 23:50) |
Я спрашиваю, есть ли хороший способ сжато передавать числа в http-запросе? |
Ну, давай подумаем вместе "Упаковать" числа можно будет. Но ты будешь тратить ресурсы на запаковку-распаковку. И при пересылке тоже будут лишние байты. Которые могут даже перевесить то, что ты упаковал...
Вот, что приходит в голову.
Если мы передаем целое число, то в памяти компа оно занимает всего 4 байта. А записать там можно число от −2 147 483 648 до 2 147 483 647, т.е. числа могут занимать до 11 байт. Если взять "внутренние" 4 байта, то для их отправки надо будет их разбить на полу-байты, которые можно представить в виде 16-ричных чисел. Таким образом, получаем, что нам надо отправить 8 байт.
Вывод. Если числа менее 8 байт (знаков), т.е. не более 99 999 999 (на 1 меньше 100 млн), то выгоднее их отправлять как простые числа, без упаковки.
Вопрос: юзеры часто будут отправлять такие большие числа? И не проще ли передавать их просто, как они есть, в их десятичном представлении?
Спустя 5 дней, 3 часа, 7 минут, 35 секунд (5.12.2009 - 02:16) supaplex777 написал(а):
Это служебные числа - сходу скажем, id пользователя который лучше генерировать случайно из большого диапазона. Настали кнечно времена, когда 1000 байт или 10 - слабая разница даже в gprs и лучше теперь делать код проще для себя, любимого, которому впоследствии придётся голову ломать - как это я англицким алфавитом хотел цифры передавать.