我试图弄清楚a URI.escape和URI.encodeRuby 之间的区别.
也没有做我想要的,即完全编码URL.
例如,我想http://my.web.com成为http%3A%2F%2Fmy%2Eweb%2Ecom
在Linux中,有一个文件,/sys/kernel/debug/tracing/trace_pipe顾名思义,它是一个管道.所以,假设我想用Python读取它的前50个字节 - 我运行以下代码:
$sudo python -c 'f=open("/sys/kernel/debug/tracing/trace_pipe","r"); print f; print f.read(50); f.close()<br>
<open file '/sys/kernel/debug/tracing/trace_pipe', mode 'r' at 0xb7757e90>
Run Code Online (Sandbox Code Playgroud)
我们可以看到打开文件的速度很快(如果我们拥有超级用户权限) - 但是,如果该trace_pipe文件在那时是空的,它将只是阻塞(即使有内容,内容也将被转储,直到没有更多,然后再次文件将阻止).然后我必须按Ctrl- C用KeyboardInterrupt... 中断Python脚本
如何让Python 2.7执行超时读取?
也就是说,我想指示Python "尝试从这个文件中读取50个字节;如果你在一秒钟后没有成功,就放弃并返回"?
我对FIX-Protocol比较新.
FIX协议消息的分隔符有时会显示^和其他时间.维基百科的FIX协议说[SOH](< 十六进制的开头 >十六进制为0x01)是该字符.
请解释一下这个含义.
例如,FIX协议消息可以在视觉上表示为
8=FIX.4.4^9=122^35=D^34=215^49=CLIENT12^52=20100225-19:41:57.316^56=B^1=Marcel^11=13346^21=1^40=2^44=5^54=1^59=0^60=20100225-19:39:52.020^10=072^
Run Code Online (Sandbox Code Playgroud)
要么
8=FIX.4.4|9=122|35=D|34=215|49=CLIENT12|52=20100225-19:41:57.316|56=B|1=Marcel|11=13346|21=1|40=2|44=5|54=1|59=0|60=20100225-19:39:52.020|10=072|
Run Code Online (Sandbox Code Playgroud)
那么使用^ over |的确切区别是什么?
是否还使用了其他分隔符.不清楚为什么[SOH](0x01)适合^或|
它可能是数字之一.
我测试了基于的redis容器. https://index.docker.io/u/dockerfile/redis/
使用相同的redis-benchmark,redis-server在容器内运行要比在托管操作系统上运行慢得多,实际统计数据如下所示.(第一个基准是Docker容器)
那么,有没有办法优化docker容器的性能?
vagrant@precise64:/tmp$ redis-benchmark -p 49153 -q -n 100000
PING (inline): 5607.27 requests per second
PING: 6721.79 requests per second
MSET (10 keys): 6085.69 requests per second
SET: 6288.91 requests per second
GET: 6627.78 requests per second
INCR: 6454.11 requests per second
LPUSH: 6449.12 requests per second
LPOP: 5355.90 requests per second
SADD: 6237.91 requests per second
SPOP: 6794.40 requests per second
LPUSH (again, in order to bench LRANGE): 6089.76 requests per second
LRANGE (first 100 elements): 6000.24 …Run Code Online (Sandbox Code Playgroud) 到目前为止我已经看过Julia的性能基准,例如http://julialang.org/,将Julia与纯Python或Python + NumPy进行比较.与NumPy不同,SciPy使用BLAS和LAPACK库,在这里我们获得了最佳的多线程SIMD实现.如果我们假设Julia和Python在调用BLAS和LAPACK函数时是相同的(在引擎盖下),当使用Numba或NumbaPro代码不调用BLAS或LAPACK函数时,Julia的性能与CPython相比如何?
我注意到的一件事是Julia使用LLVM v3.3,而Numba使用llvmlite,它建立在LLVM v3.5上.Julia的旧LLVM是否会阻止在较新的体系结构上实现最佳的SIMD实施,例如Intel Haswell(AVX2指令)?
我对意大利面条代码和小DSP循环的性能比较感兴趣,以处理非常大的向量.由于将数据移入和移出GPU设备内存的开销,后者由CPU为我更有效地处理GPU.我只对单个Intel Core-i7 CPU的性能感兴趣,因此集群性能对我来说并不重要.我特别感兴趣的是创建DSP功能的并行化实现的轻松和成功.
这个问题的第二部分是Numba与NumbaPro的比较(忽略了MKL BLAS).target="parallel"鉴于Numba装饰师的新nogil论点,NumbaPro 真的需要@jit吗?
I want to process stock level-2 data in pandas. Suppose there are four kinds data in each row for simplicity:
Which can be easily defined as a structured dtype in numpy:
dtype = np.dtype([
('millis', 'int64'),
('last_price', 'float64'),
('ask_queue', ('int32', 200)),
('bid_queue', ('int32', 200))
]) …Run Code Online (Sandbox Code Playgroud) 我们需要构建一个可以与运行Android变体的某些嵌入式设备通信的服务器.我们需要能够向设备发送命令,并接收响应.一个简单的命令可能是询问设备的状态.我们不会有HTTP,所以我们需要让客户端/设备与服务器建立连接.
我们正在考虑使用MQTT,因为它具有许多不错的属性(QoS,轻量级,为物联网构建),但它本身不支持请求响应工作流.
我们已经考虑过在MQTT之上构建RPC,但在我们开始之前,我只是想让人们对此问题有所了解.Websockets,WAMP,ZeroMQ会更好吗?
编辑:
Q1: 我们甚至需要RPC吗?
Q2: 有没有一种方法来构建系统,我总是发送异步类型的消息,仍然提供良好的用户体验?
Q3: 任何例子?
寻找实施示例并亲身体验使用单个设备构建物联网通信系统的经验.
我是机器学习的新手,我正在尝试处理Keras来执行回归任务.基于此示例,我已实现此代码.
X = df[['full_sq','floor','build_year','num_room','sub_area_2','sub_area_3','state_2.0','state_3.0','state_4.0']]
y = df['price_doc']
X = np.asarray(X)
y = np.asarray(y)
X_train, X_test, Y_train, Y_test = train_test_split(X, y, test_size=.2)
def baseline_model():
model = Sequential()
model.add(Dense(13, input_dim=9, kernel_initializer='normal',
activation='relu'))
model.add(Dense(1, kernel_initializer='normal'))
model.compile(loss='mean_squared_error', optimizer='adam')
return model
estimator = KerasRegressor(build_fn=baseline_model, nb_epoch=100, batch_size=100, verbose=False)
kfold = KFold(n_splits=10, random_state=seed)
results = cross_val_score(estimator, X_train, Y_train, cv=kfold)
print("Results: %.2f (%.2f) MSE" % (results.mean(), results.std()))
prediction = estimator.predict(X_test)
accuracy_score(Y_test, prediction)
Run Code Online (Sandbox Code Playgroud)
当我运行代码时,我收到此错误:
AttributeError: 'KerasRegressor' object has no attribute 'model'
我怎样才能在KerasRegressor中正确"插入"模型?
regression machine-learning neural-network scikit-learn keras
我想要ZeroMQ和socket.io之间的主要区别
我正在尝试设计一个模块化的实时监控系统,因此可以为不同的硬件和网络进行分布,扩展/重新配置.
我很快得出结论,我需要某种分布式企业消息系统.但是有很多选择,每个选项都有优点和缺点,其中一些选项决定了不同的架构.我正在努力弄清楚我是否需要经纪人或无代理系统,我是否需要某些系统的消息可靠性(例如RabbitMQ)或者像ZeroMQ这样的系统的轻量级高吞吐量,或者"按顺序到达"卡夫卡的高吞吐量.
首先,这些架构是否有意义?
ZeroMQ类型"Brokerless"系统:
笔记:
每个"B部分"可以有许多"A部分",许多"B部分"进入"C部分"
好处:
缺点
RabbitMQ类型Broker系统:
好处:
缺点
中间选项:
我看过卡夫卡.这是经纪人,因此发现得到了解决.然而,它似乎比RabbitMQ更轻量级,虽然它不保证交付(因此更快/更低的延迟)它确实维持秩序,RabbitMQ没有.它还可以缓冲消息 - 因此,如果出现网络问题,可以检索它们.
写下来之后,我不确定保证交付的重要性.如果控制模块收到消息,如果它是"旧"则无关紧要.如果历史学家有完整的历史,那将是伟大的 - 但它是否必不可少?
在ZeroMQ中实现我自己的"消息缓冲区"可能是一种选择,用于在发生故障时存储消息的网络通信.我有比RabbitMQ更多的控制权,并且可以在我需要它时通过更不可靠(通过网络)进行消息传递时实现它.
显然,权衡这些优点或缺点是我的工作.我的问题是:还有什么需要考虑的吗?并且确实为这两个选项的结构是否合理?
我计划将大多数实现都放在C#中,而且我目前在消息传递系统方面没有经验.
python ×3
performance ×2
android ×1
architecture ×1
docker ×1
financial ×1
fix-protocol ×1
iot ×1
julia ×1
keras ×1
linux ×1
low-latency ×1
mqtt ×1
node.js ×1
numba ×1
numba-pro ×1
numpy ×1
pandas ×1
python-2.7 ×1
regression ×1
ruby ×1
scikit-learn ×1
socket.io ×1
trading ×1
zeromq ×1