草庐IT

持久化

全部标签

apache-spark - 当 Spark 意识到不再使用 RDD 时,它会取消持久化 RDD 本身吗?

当我们想要多次使用它时,我们可以将RDD持久化到内存和/或磁盘中。但是,我们以后是否必须自己取消持久化,或者Spark是否会进行某种垃圾收集并在不再需要RDD时取消持久化?我注意到如果我自己调用unpersist函数,我的性能会变慢。 最佳答案 是的,ApacheSpark会在RDD被垃圾回收时取消持久化。在RDD.persist你可以看到:sc.cleaner.foreach(_.registerRDDForCleanup(this))这会将对RDD的WeakReference放入ReferenceQueue中,指向Context

rabbitmq - 如何避免使用 amqp php、持久连接和 php-fpm 的每个 tcp 连接的最大 channel 数

我刚开始学习rabbitMQ,但遇到了一个问题。使用http://pecl.php.net/package/amqp版本1.4(最新版本)和RabbitMQ3.3.1。我们必须使用php5-fpm和带有amqp->pconnect()的持久连接。一段时间后(我猜是65500个请求)出现一个问题,停止所有写入"Couldnotcreatechannel.Connectionhasnoopenchannelslotsremaining”根据我在源代码中读到的内容,因为每个tcp连接都有一个达到其最大值的自动增量channelID。发生这种情况是因为每个请求都必须使用channel,并且无法

php - Doctrine 修改后的 DateTime 不会持久化

这个问题在这里已经有了答案:Doctrine2ORMdoesnotsavechangestoaDateTimefield(3个答案)关闭5年前。我尝试用modify函数修改对象的DateTime字段$em=$this->getDoctrine()->getManager();$end=$session->getEndDate();$session->setEndDate($end->modify('+10seconds'));$em->persist($session);$em->flush();这是Session类中$endDate字段的setter:/***@param\DateT

php - PHP 中的 memcached 持久性无法按预期工作

我尝试了一些不同的memcached库和插件版本,以实现PHPmemcache客户端和memcached服务器之间的真正持久性。问题是仍然会打开和关闭连接,因此连接计数器会增加,而不是重新使用现有的持久连接。我已经在redhat机器上从最新的源代码编译了memcached守护进程。我使用版本memcached-1.4.14并以“#/opt/memcached/bin/memcached-vvvv”开头我还从最新的源版本memcached-2.0.1编译了php插件,我已经根据libmemcached-1.0.9编译它以使其保持最新。目前它不针对libmemcached-1.0.10进行

php - 如何从 EventManager 模拟对象获取 UnitOfWork 或者如何获取 PHP Unit 中的最后一个持久化对象?

我正在尝试对我的包进行单元测试,我想从EventManagerMock获取工作单元。基本上,我想获得最后一个持久化的对象。我知道在正常应用程序中,我可以对EventSubscriber执行相同的操作。基本上,我想要实现的是,检查前一个持久化记录的状态,如果它的标志是挂起的,然后在下一个持久化中,我想将它更新为非挂起。例子:以下是我如何获得事件管理器:/***@paramEntity\Friend|null$friendEntity*@return\Doctrine\ORM\EntityManager|\PHPUnit_Framework_MockObject_MockObject*/p

php - 如何将一个对象与多个相关对象持久化

我有实体Basket和BasketItem:/***Acme\BasketBundle\Entity\Basket**@ORM\Entity(repositoryClass="Acme\BasketBundle\Repository\BasketRepository")*@ORM\Table(name="orders")*@ORM\HasLifecycleCallbacks()*/classBasket{/***@varinteger$id**@ORM\Column(name="id",type="integer")*@ORM\Id*@ORM\GeneratedValue(strate

php - 我怎样才能使 Symfony2 中的持久化变得简单?

我目前正在使用Symfony2,到目前为止非常喜欢它。不过出现了一个问题,我想知道最佳做法是什么。如果我想持久化一个实体,我必须这样做:setSomeData('justanexample');$em=$this->get('doctrine')->getEntityManager();$em->persist($myEntity);$em->flush();这似乎需要一遍又一遍地编写大量代码。我更喜欢这样的东西:setSomeData('justanexample');$myEntity->persist();但是,根据我必须如何获得实体管理器,这似乎远非最佳实践。那我该怎么办?关于

php - Lumen PHP 框架中的 session 不持久

我正在为一个项目使用Lumen(由Laravel开发)微框架,但我在session方面遇到了一些问题。我现在只是在测试实现,但我遇到的问题是当我设置一个session变量然后刷新页面时,该变量不再设置。在我的.env文件中我有:SESSION_DRIVER=cookie而且我知道它正在被拾取,因为当我将它更改为memcached时它会抛出一个错误(因为我没有设置memcached)。我也启用了中间件:$app->middleware(['Illuminate\Session\Middleware\StartSession','Illuminate\View\Middleware\Sha

php - 在 PHP 中有没有办法像在 Java EE 中那样使用持久数据? (在 PHP 线程之间共享对象)没有 session 也没有缓存/DB

在PHP中有没有一种方法可以使用“session外”变量,这些变量不会像在Java服务器中那样在每次连接时都加载/卸载?请原谅我不够准确,我不知道如何以正确的方式写它。主要的想法是有这样的东西:我已经使用shmop和其他奇怪的东西做了这样的事情,但是如果有一种“干净”的方式在“纯PHP”中做到这一点而不使用缓存系统(我想到APC,Redis...),也不是数据库。编辑1:由于人们(感谢他们花时间为我服务)以同样的方式回答我的session,我添加了一个我没有写的约束:请不要session。编辑2:似乎只有共享内存(shmop)和命名管道才能执行此类操作。我会使用托管方式访问共享对象,而

php - 是否可以将 Doctrine 与持久 PDO 连接一起使用?

我正在尝试通过启用持久数据库连接来提高volkszaehler.org实现的性能。攻击包含Doctrine的Connection类使其具有PDO::ATTR_PERSISTENT=>true,我收到PDO错误Generalerror:PDO::ATTR_STATEMENT_CLASScannotbeused具有持久性PDO实例”有什么办法可以解决这个问题吗? 最佳答案 你可以将你自己的PDO实例传递给Doctrine,自己设置持久连接:$dbh=newPDO('mysql:host=localhost;dbname=test',$u