小编Ric*_*nop的帖子

HTTP与FTP上传

我正在建立一个大型网站,允许会员上传最大20MB的内容(图像,视频)(可能略低于15MB,我们尚未确定最终上传限制但是它会介于10之间) -25MB).

我的问题是,在这种情况下我应该使用HTTP或FTP上传吗?请记住,80-90%的上传量会比cca 1-3MB更小,但有时会有些成员上传大文件(10MB +).

HTTP上传对于如此大的文件是否足够可靠,还是应该使用FTP?上传文件时,HTTP和FTP之间是否存在明显的速度差异?

我问,因为我正在使用Zend Framework,它已经有HTTP适配器用于文件上传,如果我选择FTP,我将不得不为它编写自己的适配器.

谢谢!

php upload zend-framework file-upload

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

PHP将字符串转换为数组

如何将字符串转换为数组?例如,我有这个字符串:

$str = 'abcdef';
Run Code Online (Sandbox Code Playgroud)

我想得到:

array(6) {
  [0]=>
  string(1) "a"
  [1]=>
  string(1) "b"
  [2]=>
  string(1) "c"
  [3]=>
  string(1) "d"
  [4]=>
  string(1) "e"
  [5]=>
  string(1) "f"
}
Run Code Online (Sandbox Code Playgroud)

php arrays

13
推荐指数
3
解决办法
7万
查看次数

OpenCV - 找不到指定扩展名的编码器

这是我用来将*IplImage转换为jpg的代码:

IplImage* fIplImageHeader;
fIplImageHeader = cvCreateImageHeader(cvSize(160, 120), 8, 3);
fIplImageHeader->imageData = (char*) memblock;

vector<int> p;
p.push_back(CV_IMWRITE_JPEG_QUALITY);
p.push_back(10);
vector<unsigned char> buf;
cv::imencode("JPEG", fIplImageHeader, buf, p);

cvReleaseImageHeader(&fIplImageHeader);
Run Code Online (Sandbox Code Playgroud)

但是我收到了这个错误:

OpenCV Error: Unspecified error (could not find encoder for the specified extension) in imencode, file /build/buildd/opencv-2.1.0/src/highgui/loadsave.cpp, line 409
Run Code Online (Sandbox Code Playgroud)

在抛出'cv :: Exception'的实例后调用终止what():/ build/buildd/opencv-2.10/src/highgui/loadsave.cpp:403:error:( - 2)找不到编码器函数imencode中指定的扩展名

这是为什么?我安装了OpenCV 2.1.这很明显jpg编码器必须在那里:

cvSaveImage("/home/richard/im.jpg", fIplImageHeader);
Run Code Online (Sandbox Code Playgroud)

c++ opencv

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

在Lambless.yml中将Lambda函数分配给特定的VPC ID

我使用无服务器框架将一个Python lambda函数部署到AWS.在我的serverless.yml文件中,我已经定义了一个我需要部署到具有特定ID的VPC的功能,因为只有VPC具有从lambda函数发出一些与业务相关的请求所需的网络连接.

  customer_callback:
    vpc:
      subnetIds:
        - subnet-something
    handler: myservice/event_stream.customer_callback
Run Code Online (Sandbox Code Playgroud)

在文档中,上面的示例是他们提到的将函数附加到VPC的方法:

https://serverless.com/framework/docs/providers/aws/guide/functions/

但是,该功能根本没有部署到VPC,例如我最终得到:

在此输入图像描述

我试过像这样直接指定VPC ID:

  customer_callback:
    vpc:
      id: vpc-something
    handler: myservice/event_stream.customer_callback
Run Code Online (Sandbox Code Playgroud)

但这没有任何作用.这个问题的文档基本上不存在,我尝试了很多搜索,所以我最后要在这里发帖寻求帮助.

amazon-web-services aws-lambda serverless-framework

13
推荐指数
1
解决办法
3556
查看次数

此SELECT查询需要180秒才能完成

更新:

只是在更加明显的地方提及它.当我将IN更改为=时,查询执行时间从180下降到0.00008秒.可笑的速度差异.


此SQL查询需要180秒才能完成!怎么可能?有没有办法优化它更快?

SELECT IdLawVersionValidFrom 
FROM question_law_version 
WHERE IdQuestionLawVersion IN 
  (
  SELECT MAX(IdQuestionLawVersion) 
  FROM question_law_version 
  WHERE IdQuestionLaw IN 
    (
    SELECT MIN(IdQuestionLaw) 
    FROM question_law 
    WHERE IdQuestion=236 AND IdQuestionLaw>63
    )
  )
Run Code Online (Sandbox Code Playgroud)

每个表中只有大约5000行,所以它不应该这么慢.

mysql sql select

12
推荐指数
2
解决办法
1241
查看次数

如何在循环中写入时动态更改文件名?

我想做这样的事情:在循环中,第一次迭代将一些内容写入名为file0.txt的文件,第二次迭代file1.txt等等,只需增加数量即可.

FILE *img;
int k = 0;
while (true)
{
            // here we get some data into variable data

    file = fopen("file.txt", "wb");
    fwrite (data, 1, strlen(data) , file);
    fclose(file );

    k++;

            // here we check some condition so we can return from the loop
}
Run Code Online (Sandbox Code Playgroud)

c

12
推荐指数
2
解决办法
3万
查看次数

随机浮点数

我写了这个函数来获得0 ... 1之间的伪随机浮点数:

float randomFloat()
{
      float r = (float)rand()/(float)RAND_MAX;
      return r;
}
Run Code Online (Sandbox Code Playgroud)

但是,它总是返回0.563585.无论我运行我的控制台应用程序多少次,都是相同的数字.

编辑:

如果需要,这是我的整个申请:

#include <stdio.h>
#include <stdlib.h>

float randomFloat()
{
      float r = (float)rand() / (float)RAND_MAX;
      return r;
}

int main(int argc, char *argv[])
{
  float x[] = {
        0.72, 0.91, 0.46, 0.03, 0.12, 0.96, 0.79, 0.46, 0.66, 0.72, 0.35, -0.16,
        -0.04, -0.11, 0.31, 0.00, -0.43, 0.57, -0.47, -0.72, -0.57, -0.25,
        0.47, -0.12, -0.58, -0.48, -0.79, -0.42, -0.76, -0.77
  };

  float y[] = {
        0.82, -0.69, 0.80, …
Run Code Online (Sandbox Code Playgroud)

c random floating-point floating-point-conversion

11
推荐指数
3
解决办法
3万
查看次数

相对文件路径问题

所以这是我的程序,它工作正常:

import java.io.FileReader;
import java.io.BufferedReader;
import java.io.IOException;
import java.util.Scanner;
import java.util.Locale;

public class ScanSum {
    public static void main(String[] args) throws IOException {
        Scanner s = null;
        double sum = 0;
        try {
            s = new Scanner(new BufferedReader(new FileReader("D:/java-projects/HelloWorld/bin/usnumbers.txt")));
            s.useLocale(Locale.US);

            while (s.hasNext()) {
                if (s.hasNextDouble()) {
                    sum += s.nextDouble();
                } else {
                    s.next();
                }
            }
        } finally {
            s.close();
        }

        System.out.println(sum);
    }
}
Run Code Online (Sandbox Code Playgroud)

如您所见,我正在使用我正在阅读的文件的绝对路径:

s = new Scanner(new BufferedReader(new FileReader("D:/java-projects/HelloWorld/bin/usnumbers.txt")));
Run Code Online (Sandbox Code Playgroud)

当我尝试使用相对路径时出现问题:

s = new Scanner(new BufferedReader(new FileReader("usnumbers.txt")));
Run Code Online (Sandbox Code Playgroud)

我收到一个错误:

Exception in …
Run Code Online (Sandbox Code Playgroud)

java eclipse

11
推荐指数
3
解决办法
6万
查看次数

如何在C++ for UDP中拆分和连接数组?

我有一个像这样的字节数组:

lzo_bytep out; // my byte array
size_t uncompressedImageSize = 921600;

out = (lzo_bytep) malloc((uncompressedImageSize + 
          uncompressedImageSize / 16 + 64 + 3));
wrkmem = (lzo_voidp) malloc(LZO1X_1_MEM_COMPRESS);

// Now the byte array has 802270 bytes
r = lzo1x_1_compress(imageData, uncompressedImageSize,
        out, &out_len, wrkmem);
Run Code Online (Sandbox Code Playgroud)

如何将它分成65,535字节以下的较小部分(字节数组是我想通过UDP发送的一个大图像,其上限为65,535字节)然后将这些小块连接回连续数组?

c++ udp

11
推荐指数
2
解决办法
3733
查看次数

Python访问JSON对象中的数据

所以我在我的脚本中这样做:

import json
info = json.loads(get_info())
print info
Run Code Online (Sandbox Code Playgroud)

哪个输出:

richard@richard-desktop:~/projects/hello-python$ python main.py 
{
    "streams": [
        {
            "index": 0,
            "codec_name": "mpeg2video",
            "codec_long_name": "MPEG-2 video",
            "codec_type": "video",
            "codec_time_base": "1001/48000",
            "codec_tag_string": "[0][0][0][0]",
            "codec_tag": "0x0000",
            "width": 1920,
            "height": 1080,
            "has_b_frames": 1,
            "sample_aspect_ratio": "1:1",
            "display_aspect_ratio": "16:9",
            "pix_fmt": "yuv422p",
            "level": 2,
            "timecode": "00:59:59:00",
            "id": "0x1e0",
            "r_frame_rate": "24000/1001",
            "avg_frame_rate": "10000/417",
            "time_base": "1/90000",
            "start_time": "0.945411"
        },
        {
            "index": 1,
            "codec_name": "pcm_dvd",
            "codec_long_name": "PCM signed 20|24-bit big-endian",
            "codec_type": "audio",
            "codec_time_base": "1/48000",
            "codec_tag_string": "[0][0][0][0]",
            "codec_tag": "0x0000",
            "sample_fmt": "s32",
            "sample_rate": "48000", …
Run Code Online (Sandbox Code Playgroud)

python json ffprobe

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