我开发了大约10个不同的网站,托管在一台服务器上,下面提到了规范.
故事:
一切都运行良好,直到我决定将PHP操作码缓存集成到系统中.我首先尝试使用APC,但是Xcache出现了同样的问题,所以我认为它与缓存程序本身无关.
系统保持稳定一段时间,从一天到一周不等,并在不同时间崩溃,但主要在晚上23h-05h左右.如果我重新启动httpd服务,系统在同一时间段(1天到1周)内再次稳定,并再次崩溃等...
错误报告:
这是上次崩溃期间我的httpd全局日志的报告:
[Thu Feb 18 20:00:11.270997 2016] [core:notice] [pid 24956:tid 139940499228480] AH00052: child pid 4522 exit signal Aborted (6)
httpd: hostip.c:693: Curl_resolv_unlock: Assertion `dns && (dns->inuse>0)' failed.
[Thu Feb 18 20:08:38.793218 2016] [core:notice] [pid 24956:tid 139940499228480] AH00052: child pid 6246 exit signal Aborted (6)
httpd: hostip.c:693: Curl_resolv_unlock: Assertion `dns && (dns->inuse>0)' failed.
[Thu Feb 18 22:12:33.576308 2016] [core:notice] [pid 24956:tid 139940499228480] AH00052: child pid 8362 exit signal Aborted (6)
httpd: hostip.c:693: Curl_resolv_unlock: Assertion `dns …
Run Code Online (Sandbox Code Playgroud) 编辑我的帖子类似于Symfony Cookbook并添加了一些代码.
http://symfony.com/doc/current/cookbook/form/form_collections.html
请注意,部件中发布的实体/表单代码与上面链接的文档中的实体/表单代码相同.
我有一个"任务"实体,它链接到"标签"实体.为了保持简单,"任务"有一个字段"描述","标签"有一个字段"名称".A"标签"链接到一个"任务","任务"链接到许多"标签".
实体:
class Task
{
protected $description;
protected $tags;
public function __construct()
{ $this->tags = new ArrayCollection(); }
public function getDescription()
{ return $this->description;}
public function setDescription($description)
{ $this->description = $description; }
public function getTags()
{ return $this->tags; }
public function setTags(ArrayCollection $tags)
{ $this->tags = $tags; }
}
class Tag
{
public $name;
}
Run Code Online (Sandbox Code Playgroud)
目前,我在"任务"表单中使用"标签"集合来一次编辑所有这些标签,如Symfony CookBook中所述:
形成:
class TagType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder->add('name');
}
public function setDefaultOptions(OptionsResolverInterface $resolver) …
Run Code Online (Sandbox Code Playgroud) 我们目前正在将我们的服务器迁移到一个新的服务器,其中 PLESK 12.5 不支持我们的 PHP 应用程序的 Varnish 缓存。
我们使用 Varnish,主要是为了 'stale-while-revalidate' 功能,这样我们就可以发送整个页面或部分(使用 ESI),而无需等待任何客户在缓存刷新时等待。
对于类似的缓存,有没有 Varnish 的替代品?可以在 PLESK 或任何 PHP/服务器缓存上运行的另一个“程序”?
PLESK 带有 NGINX,但它似乎没有提供 'stale-while-revalidate' 功能;我也知道 PLESK 不支持 Squid。
我目前正在开发一个基于MySQL的网站,但如果有必要,转换到另一个数据库不是问题(如CTE左右).
我正在寻找最好的数据库数据结构(如果可能的话,还有一些SQL代码片段)来处理我当前的项目,如下所示:
产品的"树"结构非常稳定,因此更新/插入/删除查询的速度并不重要.
最终目标是能够尽快在SELECT查询中检索指定的两个日期之间可用的所有产品的列表.
这意味着:
顺便说一句,在实际情况下,我的产品永远不会有超过5级的深度.将所有父ID存储在单独的列中可能是一个很好(但非常难看)的想法.