| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java: Работа с сетью > Прокси сервер на JAVA, ПРОБЛЕМЫ? |
| Автор: Chel 17.8.2006, 15:35 | ||
| У меня есть какой то процент, вероятность сбоя. Я генерирую число, беру его и проверяю его с моим процентом. Если число больше процента то у меня в браузере выходит ошибка. Проблема моя:
у меня несколько случайных чисел, а как сделать чтобы было только одно число для каждого клиента. То есть если новый клиент соединяется то для него генерируется новое число. а то я не могу выловить ошибку,но если ловлю то ничего не происходит. Только не говорите что нужно просто с цикла вынести функцию где генерируется числа. Если что могу код скинуть, он простой, легко понять. Люди помогите пожалуйста, срочно надо, гарью. Наверное смог объяснить, задачу Заранее спасобо, ВСЕМ..... |
| Автор: LSD 17.8.2006, 15:42 |
| Ничего не понятно. Выкладывай код. |
| Автор: Chel 17.8.2006, 15:49 | ||
Добавлено @ 15:50 Помогите пожалуйста |
| Автор: Chel 17.8.2006, 18:20 |
| Люди добрые помогите плз. |
| Автор: powerOn 17.8.2006, 21:59 |
| Chel, 1) Кто, куда, как и зачем коннектится? 2) Какой обмен информацией при этом происходит между сервером и клиентом? 3) Жизненный цикл системы этой в чем заключается? Подробнее, пожалуйста... |
| Автор: Chel 18.8.2006, 10:06 | ||||||||
1.В начале прокси ишет клиента, находит и коннектитса. n-это id-ник соединения. n=100.
Клиент передаёт инфо прокси прокси ищет Remoteprot, находит делает соединение и передаёт инфо удалённому серваку. и тот обратно клиенту. connection with server
client-proxy-server
Server-proxy-Client
2. клиент у нас веб браузер. HTTP 3.если есть коннектион значит работает если нету не. Мне его не надо выключать, просто если типа А>Б значит не работает и в окне не чего нету. А в следуюший раз если А>Б не выполняется то все дальше работает опять до А>Б Наверное объяснил. ПОМОГИТЕ. а то я всё перепробовал. Не идёт. |
| Автор: Chel 18.8.2006, 12:37 |
| Люди добрые и умные подскажите хотя бы как сделать, чтоб когда клиент передавал инфо, у меня для этой передачи генерировалось только одно число, а не несколько. Как у меня. Например: Когда я захожу на сайта www.vingrad.ru: одно число Когда я захожу на сайта www.forum.vingrad.ru: другое, но одно... . . . . . ..........................и т.д |
| Автор: LSD 18.8.2006, 14:32 |
| Т.е. тебе надо для одного и того же узла получать одино и тот же число? Если да, то делай так: inetAddress.getHostName().hashCode(). |
| Автор: Chel 18.8.2006, 14:59 | ||||
| Вы меня не так поняли, у меня хост,локалпорт,ремотпрот это всё есть мне надо с генерировать число, только одно и проверить с другим числом (Процент не соединения). Типа вот такого:
Рандом числа я передаю здесь
Но тут у меня проблема, у меня несколько чисел, а мне надо для каждого клиента одно число. Чтоб проверить его здесь: 1 Цитате. он ошибку находит, но работает дальше а задача у меня: у меня есть 2%(процент не соединения). (1)когда я передаю информацию от клиента серверу у меня должна выходить ошибка, то есть не чего не показывать в браузере, когда информация поступает в прокси сервер от клиента, (2) и когда это же информация поступает уже с прокси к клиент. в (1) у меня например 9%, а в (2) 0. или на оборот. Короче одно из них должно быть 0. |
| Автор: Chel 19.8.2006, 12:27 |
| нет у нас например есть браузер, когда мы например идём на какой-нибудь сайт то в это время генерируется число для этого сайта, если идём после этого на другой то генерируется другое число....и т.д. Вот что мне нужно всё перепробовал. Помогите ПЛЗ. |
| Автор: powerOn 19.8.2006, 14:19 |
| Можно попробовать так: взять хеш от результата конкатенации строковых представлений IP адресов клиента и сервера. И случайно и уникально. |
| Автор: Chel 19.8.2006, 18:41 | ||
А не могли бы вы написать это простыми словами, а то я что та не догоняю или показать кодам. Спасибо большое. |
| Автор: Chel 19.8.2006, 20:13 |
| Люди кто нибудь знает как сделать, чтоб моя разпознавал что я перехожу на другой адрес. Типа если меняется урл??? ПЛЗ помогите? |
| Автор: powerOn 19.8.2006, 20:20 | ||
| Насколько я понял, для каждого соединения клиента с сервером Вам необходимо получить некоторое уникальное и в тоже время случайное число. Для этого: 1) Каким-то образом получаем IP адрес клиента и переводим его в строку. 2) Каким-то образом получаем IP адрес сервера и переводим его в строку. 3) Складываем полученный строки. 4) Берем хеш от полученной строки.
|
| Автор: Chel 19.8.2006, 21:56 |
| 2 MoonCat: Что та не получается? |
| Автор: powerOn 20.8.2006, 13:46 |
Всмысле вообще идея такая не годится? Или её реализовать не получается? |
| Автор: Chel 20.8.2006, 13:49 |
| 2 MoonCat: реализовать не получается, да и там по моему число большое получается, а мне надо от 0 до 100 в этом промежутке. Потому что я буду потом проверять это число... |
| Автор: powerOn 20.8.2006, 14:09 | ||
IP адреса клиента и сервера для какого-либо соединения не возможно получить? Так переведите число во float, поделите его на Integer.MAX_VALUE и умножте на 100. Тогда число сотню не привысит никогда.
|
| Автор: Chel 20.8.2006, 14:20 |
| 2 MoonCat: не могли бы вы мне написать функцию getServerIP(), getClientIP(). в учебниках смотрел так и не нашёл, я просто чайник ещё в Java Network Programming. Thanks. |
| Автор: powerOn 20.8.2006, 14:37 |
Это не в учебниках смотреть надо, а в собственной головушке... PS: Вообще все адреса через сокеты получить можно. |
| Автор: Chel 20.8.2006, 15:23 |
| Спосибо большое, попробую |
| Автор: Chel 20.8.2006, 16:35 | ||
Мне нужен вот этот хост: www.google.com если мы переходим на www.mail.ru, то хост www.mail.ru. а по вашему я IP-ник компа клиента достаю. Он работает, но мне нужно вытащить адрес страницы на которую я перешёл. Чтоб при каждом запросе он у меня генерировал разные числа. В этом случае у нас меняется адрес страницы, а не IP-ник. Как я понял... |
| Автор: Chel 20.8.2006, 20:33 |
| строку-адрес-страницы: вот я и её не могу вытащить, вытаскивает IP-ник компа, а не строка-адрес-страницы. Не подскажите какой функцией вытаскивается строка-адрес-страницы? ПЛЗ. |
| Автор: powerOn 21.8.2006, 10:04 |
Ну конечно же не подскажу. Я не телепат, и понятия не имею как работает Ваш прокси сервер. Это Вам должно быть лучше известно, чем мне. |
| Автор: Chel 21.8.2006, 10:08 |
| Понял, мне надо вытащить строку из за запроса, а потом хэш Добавлено @ 10:09 то есть строку типа host : www.vingrad.ru |
| Автор: Chel 21.8.2006, 10:47 |
| Как я понил мне надо с InputStream-a вытащить строку host: www.vingrad.ru , и сделать хэш |
| Автор: Chel 21.8.2006, 16:16 |
| Не получается? |