Articles of 灯

Phabricator极其缓慢

我正在使用Phabricator进行代码评审,经过修改后,我已经按照自己的意愿设置了更多或更less的代码。 我只是有一个问题,我不能真正find解决办法。 浏览phabricator应用程序是顺利的,没有延误。 但是当我在“ 飞跃行动”中写评论(或者select任何其他行动),然后按下“ 小丑飞行 ” ( Clowncopterize)之后,它会一直持续下去。 右下angular的齿轮(繁忙指示器)持续旋转最多60秒。 我无法弄清楚这是什么原因。 我试图做一个顶端,我没有看到任何严重的: top – 11:40:36 up 9 min, 1 user, load average: 0.04, 0.10, 0.07 Tasks: 112 total, 1 running, 111 sleeping, 0 stopped, 0 zombie %Cpu(s): 0.0 us, 0.0 sy, 0.0 ni, 99.8 id, 0.0 wa, 0.0 hi, 0.2 si, 0.0 st KiB Mem: […]

64位的Linux / Ubuntu和OpenSSL的问题(无法读取符号:值不好)

通常我会search很多东西并阅读很多东西来解决我的问题,但是对于这个特殊的问题,这是非常不利的。 我正在运行一个64位的Ubuntu Linux服务器,我安装了LAMP堆栈,并且libcurl没有SSL支持,而OS二进制文件有SSL支持。 PHP不能读取它。 当我search解决scheme,并尝试执行以下操作以在安装PHP时启用SSL支持,我得到了问题.. ./configure …. –with-openssl … …. /usr/bin/ld: ext/standard/.libs/info.o: relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a shared object; recompile with -fPIC ext/standard/.libs/info.o: could not read symbols: Bad value collect2: error: ld returned 1 exit status make: *** [libphp5.la] Error 1 所以,它突然停了下来。 我试着做–enable-shared –without-pic的参数无济于事。

dynamic安排提醒电子邮件的最佳方式? 比cron更好的吗?

问候,我正在开发一个Web应用程序。 其中的一部分将允许用户安排“提醒”电子邮件发送给他们在一天的特定时间。 什么是完成这个最好的方法? 基本上,当我想要的是一个“中断”模式时,我所提出的所有解决scheme都以“轮询”模式进行操作。 以下是我提出的一些可能的解决scheme: 每分钟都有一个cronjob火灾。 启动的脚本检查数据库以查看是否有任何电子邮件发送,如果有,则发送它们,否则它会重新进入睡眠状态。 缺点是每分钟都会有一些开销。 此外,这可能不是一个可扩展的系统,特别是当用户数量过大,发送所有电子邮件可能花费一分钟。 与#1相同,但工作每15分钟才会启动。 这样更容易pipe理,但并不完美,因为它限制了用户在15分钟的时间内提醒,并且在没有电子邮件发送时仍然会产生一些开销。 不错,但也不完美。 让PHP exec()有一些代码可以dynamic地改变crontab或者在底层的linux中调度“at”作业。 这会给我灵活性和“中断”型的模型,所以我会很渴望,但是会让PHP执行exec()linux代码的时候会出现一个巨大的安全漏洞。 所以,我要继续前进,把这个排除在外。 那么,比我想出来的更好吗? 也许没有使用cron安排电子邮件的方式? 我很好奇,看看你们有什么要说的:)。

当LAMP服务器上有数百万用户时,什么是最快和最有效的存储和提取图像的方式?

这是迄今为止我提出的最好的方法,我想知道是否有一个更好的方法(我确定有!)来存储和获取数以百万计的用户图像: 为了保持目录的大小,并避免对数据库进行任何额外的调用,我使用基于用户的唯一ID计算的嵌套目录如下: $firstDir = './images'; $secondDir = floor($userID / 100000); $thirdDir = floor(substr($id, -5, 5) / 100); $fourthDir = $userID; $imgLocation = "$firstDir/$secondDir/$thirdDir/$fourthDir/1.jpg"; 用户ID( $userID )的范围从1到数百万。 所以,如果我有用户ID 7654321 ,例如,该用户的第一张照片将被存储在: ./images/76/543/7654321/1.jpg 对于用户ID 654321 : ./images/6/543/654321/1.jpg 对于用户ID 54321 ,它将是: ./images/0/543/54321/1.jpg 对于用户ID 4321 ,它将是: ./images/0/43/4321/1.jpg 对于用户ID 321 ,它将是: ./images/0/3/321/1.jpg 对于用户ID 21 ,它将是: ./images/0/0/21/1.jpg 对于用户ID 1 ,它将是: ./images/0/0/1/1.jpg 这确保了用户高达100,000,000,我永远不会有一个目录超过1000个子目录,所以它似乎保持干净和高效。 […]

麻烦与stream浪汉 – “404 – 找不到”

我正在尝试使用Vagrant制作一个LAMP盒子。 我被告知使用它非常简单。 我对networking和虚拟机器是完全陌生的,而且对Linux / Ubuntu很less有经验。 我目前已经在官方文档页面上尝试了以下教程: http : //docs.vagrantup.com/v2/getting-started/networking.html 。 我已经到了文档中的networking文章,似乎无法得到它的工作。 现在的问题是,由于我的networking和基于Linux操作系统的经验不足,我不知道从哪里开始解决问题。 我会尽力提供尽可能多的信息。 我正在运行带有Windows 8.1的最新版本的Virtualbox的最新版本的Vagrant。 根据教程,我目前的Vagrantfile看起来像这样: Vagrant.configure(2) do |config| config.vm.box = "hashicorp/precise32" config.vm.provision :shell, path: "bootstrap.sh" config.vm.network :forwarded_port, host: 4567, guest: 80 end 我的bootstrap.sh文件如下所示: #!/usr/bin/env bash apt-get update apt-get install -y apache2 if ! [ -L /var/www ]; then rm -rf /var/www ln -f /vagrant […]

Linux用户和LAMP服务器组

根据linux用户和组build立LAMP服务器的最佳做法是什么? 如果在同一台服务器上托pipe多个站点,最好是拥有一个拥有与apache相同组中的所有站点源文件(并上传)的单个用户,或者为每个站点拥有不同的用户每个站点都有自己的crontab)? 还是其他什么东西? 出于某种原因,这个问题似乎从来没有在我遇到的PHP / MySQL / Linux书籍中得到解决。

在PHP(LAMP)中创build文档的缩略图预览(PDF,DOC,XLS等)

当用户上传某些文件到我的网站(如.doc,.xls,.pdf等)时,我希望能够生成预览缩略图(文档的第一页)。 我正在使用LAMP堆栈中的PHP,但是对于可以完成这项工作的任何库或命令行工具(Linux非常喜欢)都会很满意。

我需要什么来在IIS上运行PHP应用程序?

作为LAMP服务器上的PHP开发人员已经有相当长的一段时间了,有什么需要在为Windows上的IIS准备应用程序时考虑到的。