小编lol*_*ter的帖子

PHP中的并发性

我正在我的PHP服务器端API中,我正在进行大量的MySQL查询,我想通过让多个线程处理不同的查询然后返回结果来加快速度.

但是如何在PHP中创建另一个线程?我正在传递POST params,所以一个简单的shell_exec()可以工作,但似乎有点不安全.我正在考虑的选项:

1)使用我拥有的参数发出cURL请求,处理请求中的JSON然后返回

2)shell_exec()用PHP CLI 调用a 并以某种方式(我将如何做到这一点?)处理PHP中的响应

这里最好的选择是什么?

php mysql api concurrency server-side

9
推荐指数
1
解决办法
1021
查看次数

如何在python中将任意文件类型序列化为json字符串

我的服务器将发送一个JSON,序列化为字符串,通过套接字发送到另一台客户端机器.我会拿最后的json做这个:

import json
python_dict_obj = { "id" : 1001, "name" : "something", "file" : <???> }
serialized_json_str = json.dumps(python_dict_obj)
Run Code Online (Sandbox Code Playgroud)

我想让我的JSON中的一个字段具有作为文件的值,编码为字符串.

性能方面(但也是互操作性)使用python编码文件的最佳方法是什么?Base64编码?二进制?只是原始的字符串文本?

编辑 - 对于那些建议base64,这样的事情?

# get file
import base64
import json

with open(filename, 'r') as f:
    filecontents = f.read()
encoded = base64.b64encode(filecontents)
python_dict_obj['file'] = encoded
serialized_json_str = json.dumps(python_dict_obj)

# ... sent to client via socket

# decrpyting
json_again = json.loads(serialized)
filecontents_again = base64.b64decode(json_again['file'])
Run Code Online (Sandbox Code Playgroud)

python serialization json

9
推荐指数
1
解决办法
7971
查看次数

django在heroku上部署单独的web和api端点

我有一个带有相关API和数据库的Web应用程序.

我想在API中使用相同的Django模型,但是它由不同的进程单独提供,因此我可以独立扩展它.

我也不需要API来提供静态资产或任何其他视图.

复杂的是我定义的路由有API,webapp共享根域:

http://domain.com/normal/application/stuff
http://domain.com/api/different/stuff
Run Code Online (Sandbox Code Playgroud)

另外我的Django应用程序依赖于彼此的模型和常量(所以两个不同的settings.py文件有不同INSTALLED_APPS并不能完全解决它).

我想有一种方法是我可以在我的Procfile中定义不同的进程,它只是启动Django应用程序,但是在其中一个进程中它可能有不同的环境变量?我不认为我可以改变每个Proc的环境heroku:config,我认为它实际上必须是Procfile中的指令.

任何人都有这方面的经验或见解吗?谢谢!

python django heroku procfile

9
推荐指数
1
解决办法
427
查看次数

ImportError:在virtualenv中的Mac OS X上没有名为setuptools.command的模块

尝试drfdocs在virtualenv中的Mac OSX上安装Python pip包(Django Rest Framework文档):

以下是pip,python,easy_install的相关版本:

$ virtualenv --version
1.11.4

$ mkvirtualenv test
New python executable in test/bin/python
Installing setuptools, pip...done.

(test)$ python --version; which python
Python 2.7.10
/Users/me/.virtualenvs/test/bin/python

(test)$ pip --version; which pip
pip 1.5.4 from /Users/me/.virtualenvs/test/lib/python2.7/site-packages (python 2.7)
/Users/me/.virtualenvs/test/bin/pip

(test)$ easy_install --version; which easy_install
setuptools 2.2
/Users/me/.virtualenvs/test/bin/easy_install

(test)$ python -c "import setuptools.command; print setuptools.command"
<module 'setuptools.command' from '/Users/me/.virtualenvs/test/lib/python2.7/site-packages/setuptools/command/__init__.pyc'>
Run Code Online (Sandbox Code Playgroud)

这是错误:

$ pip install drfdocs
Downloading/unpacking drfdocs
  Downloading drfdocs-0.0.11.tar.gz (771kB): 771kB downloaded
  Running setup.py (path:/Users/me/.virtualenvs/test/build/drfdocs/setup.py) egg_info for package …
Run Code Online (Sandbox Code Playgroud)

python django macos virtualenv virtualenvwrapper

9
推荐指数
1
解决办法
1921
查看次数

从Dataset map()函数调用内生成的图操作中添加Tensorboard摘要

我发现Dataset.map()功能非常适合设置管道以预先处理图像/音频数据,然后再送入网络进行培训,但我遇到的一个问题是在预处理之前访问原始数据以发送到tensorboard作为摘要.

例如,假设我有一个加载音频数据的功能,做一些帧,制作频谱图,然后返回.

import tensorflow as tf 

def load_audio_examples(label, path):
    # loads audio, converts to spectorgram
    pcm = ...  # this is what I'd like to put into tf.summmary.audio() !
    # creates one-hot encoded labels, etc
    return labels, examples

# create dataset
training = tf.data.Dataset.from_tensor_slices((
    tf.constant(labels), 
    tf.constant(paths)
))

training = training.map(load_audio_examples, num_parallel_calls=4)

# create ops for training
train_step = # ...
accuracy = # ...

# create iterator
iterator = training.repeat().make_one_shot_iterator()
next_element = iterator.get_next()

# ready session
sess = tf.InteractiveSession()
tf.global_variables_initializer().run() …
Run Code Online (Sandbox Code Playgroud)

python tensorflow tensorboard tensorflow-serving tensorflow-datasets

9
推荐指数
1
解决办法
442
查看次数

为什么我的 docker-compose 卷没有通过本地文件添加进行更新?

这是 my docker-compose.yml,它包含一个 web 服务,它在本地安装一个文件夹,以便在任何代码更改时watchmedo重新启动webappdjango 服务器。它是 nginx 的反向代理。

version: '3'
services:
  webapp:
    build:
      context: .
      dockerfile: ./web/Dockerfile
    volumes:
      - ./web/:/usr/src/app/
      - staticfile_volume:/usr/src/app/public
    entrypoint: >
      watchmedo auto-restart --recursive 
        --pattern="*.py" --directory="." 
          gunicorn myapp.wsgi:application -- --bind 0.0.0.0:9000
  nginx:
    build:
      context: .
      dockerfile: ./nginx/Dockerfile
    depends_on:
      - webapp
    volumes:
      - staticfile_volume:/usr/src/app/public
volumes:
  staticfile_volume:
Run Code Online (Sandbox Code Playgroud)

我的本地文件设置如下:

$ tree -L 2
.
??? docker-compose.yml
??? nginx
?   ??? Dockerfile
?   ??? nginx.conf
??? web
   ??? Dockerfile
   ??? manage.py
   ??? myapp
   ??? public
   ??? …
Run Code Online (Sandbox Code Playgroud)

django nginx docker docker-compose docker-volume

9
推荐指数
1
解决办法
8563
查看次数

当 ECS 任务定义已经有“imagedefinitions.json”时,为什么 CodePipeline 还需要它?

好的,我有一个 CodePipeline,它的功能非常普通

CodeCommit -> Build Docker images -> CodeDeploy to ECS

在该buildspec.yml文件中,AWS要求输出imagedefinitions.json为 CodePipeline 可用于将容器名称映射到 ECR 图像 URL 的工件。

以下是经常引用的示例,说明如何在您的 中执行此操作buildspec.yml

printf '[{"name":"MyService","imageUri":"%s"}]' $AWS_ACCOUNT_ID.dkr.ecr.$AWS_DEFAULT_REGION.amazonaws.com/myservice/app:latest > imagedefinitions.json

但这对我来说似乎完全多余。在 ECS 任务定义中,我们可以在 下包含以下内容containerDefinitions

"containerDefinitions": [
    {
      "name": "MyService",
      "image": "123456789.dkr.ecr.us-east-1.amazonaws.com/myservice/app:latest"
     }, 
     ...
]
Run Code Online (Sandbox Code Playgroud)

为什么为了使用 CodePipeline CodeDeploy ECS 任务,我们必须提供 ECS 任务定义中已指定的信息?在这里消除对工件(以及存储所述工件的 S3 存储桶)的需要会更加干净!

也许 CodeDeploy/ECS 的一些基础知识我不明白。

amazon-ecs aws-code-deploy aws-codepipeline

9
推荐指数
1
解决办法
6530
查看次数

试图让OpenCV 3.2.0与virtualenv一起工作

我使用Python 2.7和virtualenv&virtualenvwrapper使用Ubuntu 16.04.

按照本指南,我设法让我的系统Python2.7使用cv2全局安装的以下脚本.

我用这个脚本来安装它:

######################################
# INSTALL OPENCV ON UBUNTU OR DEBIAN #
######################################

# |         THIS SCRIPT IS TESTED CORRECTLY ON         |
# |----------------------------------------------------|
# | OS             | OpenCV       | Test | Last test   |
# |----------------|--------------|------|-------------|
# | Ubuntu 16.04.2 | OpenCV 3.2.0 | OK   | 20 May 2017 |
# | Debian 8.8     | OpenCV 3.2.0 | OK   | 20 May 2017 |
# | Debian 9.0     | OpenCV 3.2.0 | OK …
Run Code Online (Sandbox Code Playgroud)

python ubuntu opencv ffmpeg

8
推荐指数
1
解决办法
1094
查看次数

为什么 Rust 说我的变量未使用?

这是一个Rust 游乐场链接,但是:

fn main() {
    // marking var as mutable
    let mut counter = 0;
    counter += 1;
    counter += 3;
    println!("counter: {}", counter);

    // "shadowing" a variable: this is allocating mem for new var, 
    // and replacing the old one after
    let myvar = 5;
    let myvar = 1000;
    println!("myvar: {}", myvar);
}
Run Code Online (Sandbox Code Playgroud)

这给出了警告:

warning: unused variable: `myvar`
  --> src/main.rs:19:9
   |
19 |     let myvar = 5;
   |         ^^^^^ help: if this is intentional, prefix it with …
Run Code Online (Sandbox Code Playgroud)

rust

8
推荐指数
2
解决办法
227
查看次数

为什么我的卷积例程与 numpy 和 scipy 的不同?

我想手动编码一个 1D 卷积,因为我正在使用内核进行时间序列分类,我决定制作著名的 Wikipedia 卷积图像,如图所示。

在此处输入图片说明

这是我的脚本。我正在使用数字信号卷积标准公式

import numpy as np 
import matplotlib.pyplot as plt
import scipy.ndimage

plt.style.use('ggplot')

def convolve1d(signal, ir):
    """
    we use the 'same' / 'constant' method for zero padding. 
    """
    n = len(signal)
    m = len(ir)
    output = np.zeros(n)

    for i in range(n):
        for j in range(m):
            if i - j < 0: continue
            output[i] += signal[i - j] * ir[j]

    return output

def make_square_and_saw_waves(height, start, end, n):
    single_square_wave = []
    single_saw_wave = [] …
Run Code Online (Sandbox Code Playgroud)

python numpy matplotlib convolution scipy

7
推荐指数
1
解决办法
1793
查看次数