小编Dav*_*cía的帖子

来自异常超时的任务

我有这段代码来发出异步HTTP请求:

    public static void MakeRequest(Uri uri, Action<RequestCallbackState> responseCallback)
    {
        WebRequest request = WebRequest.Create(uri);
        request.Proxy = null;

        Task.Factory.FromAsync<WebResponse>(request.BeginGetResponse, request.EndGetResponse, null).ContinueWith(task =>
            {
                WebResponse response = task.Result;
                Stream responseStream = response.GetResponseStream();
                responseCallback(new RequestCallbackState(response.GetResponseStream()));
                responseStream.Close();
                response.Close();
            });
    }
Run Code Online (Sandbox Code Playgroud)

它可以工作,但我需要设置一个请求超时.我试图使用request.Timeout但似乎没有做任何事情.有没有办法在此代码中设置任务超时?

编辑添加新的超时回调.新代码:

    public static void MakeRequest(Uri uri, Action<RequestCallbackState> responseCallback)
    {
        WebRequest request = WebRequest.Create(uri);
        request.Proxy = null;

        IAsyncResult t = Task.Factory.FromAsync<WebResponse>(request.BeginGetResponse, request.EndGetResponse, null).ContinueWith(task =>
            {
                WebResponse response = task.Result;
                Stream responseStream = response.GetResponseStream();
                responseCallback(new RequestCallbackState(response.GetResponseStream()));
                responseStream.Close();
                response.Close();
            });
        ThreadPool.RegisterWaitForSingleObject(t.AsyncWaitHandle, new WaitOrTimerCallback(TimeoutCallback), request, 1000, true);
    } …
Run Code Online (Sandbox Code Playgroud)

c# asynchronous

5
推荐指数
1
解决办法
4600
查看次数

处理多个插座连接

我正在用Python编写客户端 - 服务器应用程序.我们的想法是拥有一台主服务器和数千个将与之连接的客户端.服务器将随机发送小文件到要处理的客户端,客户端必须每分钟完成工作并将其状态更新到服务器.我的问题是,目前我只有一个小而老的家庭服务器,所以我认为它无法处理这么多连接.也许你可以帮我这个:

  • 如何增加服务器中的连接数?
  • 如何平衡客户端的负载?
  • 我怎样才能改善沟通?我的意思是,我需要在服务器上有一个客户端列表及其状态(可能在数据库中?),这些更新将不时收到,所以我不需要永久连接.使用UDP发送更新是个好主意吗?如果没有,每次收到更新时是否必须创建新线程?

编辑:我更新了问题,以解释问题稍微好一点,但主要是为了解决同样问题的人.在@TimMcNamara答案中实际上有一个很好的解决方案.

python sockets client-server

5
推荐指数
1
解决办法
3296
查看次数

在Bootstrap dl-horizo​​ntal元素中截断的文本

我有一个使用Bootstrap v3.0的网站.在其中一个视图中,我需要显示6对键值项,我使用的是dl-horizo​​ntal元素.我的这个列表的问题是我的键有不同的长度,所以当我有一个长键时,文本被截断.将文本分成两行或更多行会很好.这可能吗?有没有更好的元素来做到这一点?

当文字太短时我也有问题.在这种情况下,左边有很多空间.这是一个例子:

在此输入图像描述

twitter-bootstrap twitter-bootstrap-3

5
推荐指数
1
解决办法
2万
查看次数

找不到 Pyspark 模块

我正在尝试在 Yarn 中执行一个简单的 Pyspark 作业。这是代码:

from pyspark import SparkConf, SparkContext

conf = (SparkConf()
         .setMaster("yarn-client")
         .setAppName("HDFS Filter")
         .set("spark.executor.memory", "1g"))
sc = SparkContext(conf = conf)

inputFile = sc.textFile("hdfs://myserver:9000/1436304078054.json.gz").cache()
matchTerm = "spark"
numMatches = inputFile.filter(lambda line: matchTerm in line).count()
print(numMatches, "lines contain", matchTerm)
Run Code Online (Sandbox Code Playgroud)

我不知道代码是否有效,这不是重点。问题是,当我使用./bin/pyspark ../job.pyspark 目录中的命令运行它时,出现下一个错误(只是整个输出的一小部分):

15/09/01 17:57:02 INFO storage.BlockManagerInfo: Added broadcast_1_piece0 in memory on hadoop-05:44841 (size: 3.8 KB, free: 534.5 MB)
15/09/01 17:57:02 WARN scheduler.TaskSetManager: Lost task 0.0 in stage 0.0 (TID 0, hadoop-05): org.apache.spark.SparkException: 
Error from python worker:
  /usr/bin/python2.7: …
Run Code Online (Sandbox Code Playgroud)

python hadoop hadoop-yarn apache-spark pyspark

5
推荐指数
2
解决办法
1万
查看次数

具有两个观察者列表的观察者模式

我有一个MyObserver类,它监听Notifier中的更改.Notifier扩展了Observable并使用notifyObservers(Object)通知其事件.作为参数传递的对象始终是同一个类的实例.问题是每个观察者都需要听取不同的事件.例如,一个观察者需要监听状态改变的事件,而其他观察者需要监听所有类型的事件.我怎样才能用观察者模式做到这一点?

谢谢.

java events observer-pattern

4
推荐指数
2
解决办法
3696
查看次数

使用Spring Data审核DB记录更改

我需要审核一些数据库表的所有更改.例如,对于给定的员工,我需要知道所有地址以及修改此字段的日期.实际上我正在使用Spring Data,Hibernate和JPA.一个很好的选择是使用Hibernation Envers,但问题是我无法使用Spring Data获取历史记录.另一种选择是拥有一个Employee_history表,但我没有看到从两个不同的表中获取Employee记录的方法(我想在Employee表中插入,但从Employee和Employee_history中获取数据).有没有其他方法可以实现这一目标?

java spring hibernate jpa spring-data

4
推荐指数
2
解决办法
7560
查看次数

使用 fileConfig 在 Python 中配置自定义处理程序

我正在使用配置文件在 Python 应用程序中配置我的记录器。这是文件:

[loggers]
keys=root

[logger_root]
level=INFO
handlers=console

[handlers]
keys=console,file_rotating

[handler_console]
class=StreamHandler
level=WARNING
formatter=console
args=(sys.stderr,)

[handler_file_rotating]
class=TimeRotatingFileHandler
level=DEBUG
formatter=file
args=('../logs/twicker.log', 'd', 1, 5)

[formatters]
keys=console,file

[formatter_console]
format=%(levelname)s - %(message)s

[formatter_file]
format=%(asctime)s - %(levelname)s - %(module)s - %(message)s
Run Code Online (Sandbox Code Playgroud)

我的问题是 TimeRotatingFileHandler。每次运行该应用程序时,都会出现下一个错误:

导入错误:没有名为“TimeRotatingFileHandler”的模块

我做错了什么?我也尝试将类行更改为,class=handlers.TimeRotatingFileHandler但在这种情况下,我收到下一个错误:

导入错误:没有名为“处理程序”的模块

python logging python-3.x

4
推荐指数
2
解决办法
5827
查看次数

C++ 与 Python 服务器端性能

我必须开发一个必须建立大量连接才能接收和发送小文件的服务器。问题是,使用 C++ 提高性能是否值得花时间开发代码,或者是否最好使用 Python 并不时调试代码以加快速度。也许是一个有点抽象的问题,没有给出很多联系,但我真的不知道。至少 10,000 个连接/分钟来更新客户端状态。

c++ python performance cpu-speed

3
推荐指数
1
解决办法
3335
查看次数

成功部署Spring应用程序后运行代码

Spring应用程序中有没有办法知道初始化何时完成?部署我的应用程序后,我必须运行一些代码,并且我正在搜索类似ServletContextListener或Spring内置事件的内容.

events spring spring-mvc listener

3
推荐指数
1
解决办法
4861
查看次数

在Spring中实例化新线程以定期执行任务

我有一个用Spring制作的仪表板,必须控制一些任务执行.基本思想是让一个线程定期向远程跟踪器发送此任务.我怎样才能实现这个帖子?我一直在阅读,有些人说使用线程不是一个好主意.这会导致Spring生命周期出现问题吗?是否有另一种方法可以定期调用方法?

java spring task

2
推荐指数
1
解决办法
2089
查看次数