MapReduce является методом для обработки обширных сумм данных параллельно, не требуя, чтобы разработчик записал любой другой код кроме картопостроителя и уменьшил функции.
функция карты принимает данные и производит в большом количестве результат, который сохранен в барьере. Эта функция может работать параллельно с большим количеством того же задача карты . Набор данных может тогда быть , уменьшил до скалярной величины.
Поэтому, если Вы думаете о нем как SQL-оператор
SELECT SUM(salary)
FROM employees
WHERE salary > 1000
GROUP by deptname
, Мы можем использовать карта для получения нашего подмножества сотрудников с зарплатой> 1000, который карта испускает к барьеру в блоки размера группы.
Уменьшают , суммирует каждую из тех групп. Предоставление Вам Ваш набор результатов.
просто щипнул это от моего университет примечания исследования к документу Google
Можете ли вы убедиться, что
<system.net><settings><servicePointManager useNagleAlgorithm="false"/>
и повторить попытку?
Если это все еще не удается, есть ли заголовок длины содержимого? Одно и то же значение в обоих случаях? И последнее, но не менее важное: есть ли в ответе лишние байты? Да, и вы должны включить строку:
//Console.WriteLine (readStream.ReadToEnd ());
, чтобы убедиться, что произойдет повторное использование соединения (это может произойти и без этого, но на всякий случай).
Также в этой ситуации может быть полезен следующий MS KB. http://support.microsoft.com/kb/823764
[ОБНОВЛЕНИЕ 02.09.10]
Продолжая мой комментарий выше, вы должны провести этот тест на той же машине. Как я уже упоминал, я бы запустил 32-битный исполняемый файл на 64-битной машине и посмотрел, какие измерения я получу.
Тот факт, что приложение работает намного медленнее на 64-битной машине, может быть связан с конфигурацией самой машины - возможно, существует глючная сетевая карта, плохой сетевой драйвер, проблемы с сетью и т. д.
Итак, сначала я бы сделал сравнение яблок с яблоками между 32-битным и 64-битным приложением, работающим на одной и той же 64-битной машине. Это покажет, связана ли проблема с конфигурацией машины или чем-то еще.
HttpWebRequest
и HttpWebResponse
оба реализуют IDisposable
, но я не вижу, чтобы вы избавлялись от этих объектов. Я действительно вижу, как вы закрываете поток ответов и ответов, но по моему опыту, если вы не избавитесь от всех этих объектов, вы можете получить очень длительные задержки, которые в противном случае кажутся случайными.
Большинство ключей реестра, расположенные по адресу:
HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ Centreversion \ Explorer \ Shell Папки
начались с % UserProfile%
. Я обновил все ключевые ключи реестра, которые начались с % UserProfile%
, чтобы начать с C: \ пользователей \ myusername
. Я проверил на Windows XP, что пути на самом деле жестко закодированы и что % UserProfile%
не используется. ИТ-ребята упомянул, что ключи реестра Default используются для использования % UserProfile%
из-за профиля по умолчанию, используемого в Windows 7., JVM ожидает, что путь рабочего стола для жесткого кодирования. Он не оценивает переменные среды.
Вы можете обновить ключи реестра один за другим или вы сможете экспортировать папку и изменить клавиши. Вот как вы можете экспортировать и импортировать ключи реестра:
Regedit
. Это открывает редактор реестра. HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \ Explorer \ Shell Folders
.
и выберите экспорт.
для имени файла и сохраните файл. % UserProfile%
с C: \\ пользователями \\ yourusername
. Сохраните и закройте файл. Папки оболочки .reg
и нажмите Открыть. . Регистрация
файл от рабочего стола. Просто для тех, кто поставляется на этой теме и имеет проблемы.
Причина задержки на 64-битных системах является WebClient ждать Windows для возврата значения прокси.
Напишите свой код, чтобы преодолеть этот вопрос.
WebClient wc = New WebClient;
wc.Proxy = null;
Это устранит задержку, замеченную некоторыми пользователями (включая себя :))
Рад, что я, наконец, мог вернуть что-то обратно в сообщество, которое помогло мне так много:)
попробуйте установить для параметра keep alive значение false ( request.KeepAlive = false;
)