вы можете
using System.Net;
using System.IO;
using Newtonsoft.Json.Linq;
public ActionResult geoPlugin()
{
var url = "http://freegeoip.net/json/";
var request = System.Net.WebRequest.Create(url);
using (WebResponse wrs = request.GetResponse())
using (Stream stream = wrs.GetResponseStream())
using (StreamReader reader = new StreamReader(stream))
{
string json = reader.ReadToEnd();
var obj = JObject.Parse(json);
var City = (string)obj["city"];
// - For Country = (string)obj["region_name"];
//- For CountryCode = (string)obj["country_code"];
Session["CurrentRegionName"]= (string)obj["country_name"];
Session["CurrentRegion"] = (string)obj["country_code"];
}
return RedirectToAction("Index");
}
Хотя вы не можете отключить все тайм-ауты между кластером Kafka и его потребителями, вы можете изменить некоторые свойства на очень длинные:
group.max.session.timeout.ms
- это максимальное время ожидания сеанса для любого потребителя , По умолчанию это пять минут. Установите для этого параметра значение max max integer, такое как 2100000000
, в файле свойств брокера, обычно называемом server.properties
. max.poll.interval.ms
- Это похоже на тайм-аут сеанса и помечает потребителя как мёртвого, если в течение этого интервала нет опроса. Установите это значение также меньше request.timeout.ms
, например 1900000000
. В Apache Camel вы захотите установить следующие свойства:
consumerRequestTimeoutMs
- это максимальное время ожидания ответа от клиента. Установите для этого значение 2000000000
. sessionTimeoutMs
- Вероятно, это тайм-аут сеанса, который помечает вашего потребителя как мертвого. Это должно быть установлено на значение меньше, чем request.timeout.ms
. Итак, что-то вроде 1900000000
. Может быть еще несколько, найденных здесь , любой из которых с timeout
или ms
будет хорошим для просмотра.