【问题标题】:does dynamic laravel database properties affect the application speed?动态 laravel 数据库属性会影响应用程序速度吗?
【发布时间】:2016-05-03 11:04:30
【问题描述】:

我在我的新应用程序中使用 Laravel 5.1,它已经处于起步阶段,但我想在不久的将来它将是一个包含大量数据和查询的大型应用程序,每个用户都可能会询问。

Laravel 以某种方式为 mysql 数据库字段使用动态属性,例如你刚才说的

$role = new Role();
$role->slug = 'admin';

你没有定义类似的东西

Class Role extends Model{
   protected $_slug;

   public function getSlug(){
       return $this->_slug;
   }
   public function setSlug( $slug ){
       $this->_slug = $slug;
       return $this;
   }
   ...

this(以旧方式)所以说 slug 字段实际上存在并且我正在使用它,你只是动态分配它,

我的问题是,这种方案是影响在大规模数据中的应用速度还是没关系?

我应该定义每个表字段,以获得更好的性能吗?

【问题讨论】:

    标签: php mysql performance laravel laravel-5.1


    【解决方案1】:

    Laravel 方式不会扩展内存的复杂性,因为所有数据都加载到 $attributes 受保护的属性 - 所以它们被保存在那里,这意味着它们需要相同的内存。

    事实上,对于大型项目,我们可以使用$this->entry 解决计算复杂度和接收数据时间的问题——因为这是魔术__get() 方法中的操作。事实是,您不应该对大量数据使用 eloquent - 它肯定会杀死 CPU。不幸的是,在大量数据中,Laravel 变得毫无用处。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-01-12
      • 1970-01-01
      • 1970-01-01
      • 2012-02-06
      • 1970-01-01
      • 2015-04-07
      • 1970-01-01
      相关资源
      最近更新 更多