小编Nic*_*k M的帖子

HotJar如何生成他们的录音?

跟踪鼠标移动/滚动/点击事件很容易,但他们如何保存屏幕并使其保持同步?

页面呈现得非常好(至少对于静态HTML页面,没有在Angular或任何SPA上测试过),同步几乎是完美的.

要生成并上传23fps的屏幕录制(1920x1080),需要大约2Mbps的带宽.也许只有当有一些鼠标事件录制时,它仍然需要平均300-500Kbps?这似乎太多了......

javascript hotjar

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

在tomcat中记录所有请求和响应数据

有些人说,世界上的每一刻都会发生变化.

我们坐在一个胖胖的REST API服务器上,这个服务器的维护成本越来越大,因为很难找到优秀的Java开发人员,昂贵的开发需要花费更多的时间,所以我们慢慢地将各种应用程序部分切换到Rails ,这是......好吧,没关系.

有太多的API(有些文档记录很少)只是通过查看文档来克隆功能,所以我的想法是找到一种方法来记录通过这个服务的所有东西一段时间,以机器可读的格式我们以后可以索引,处理和报告,所以我们可以逐步重写代码.

是否有一个"干净"不那么"hacky"的方式与Tomcat这样做?或者我应该沿着wireshark /反向代理方式?

TIA!

java tomcat

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

ActiveStorage::FileNotFoundError 但文件确实存在

我正在开发这个 Rails 6.0.21 应用程序(ruby 2.5.5),并使用 puma 3.12.2 作为开发 Web 服务器和具有本地磁盘服务的 ActiveStorage。

我的应用程序时不时会出现错误ActiveStorage::FileNotFoundError。实际文件存在于磁盘上。该模型正确响应.attached?。

重新启动 puma 解决了这个问题,然后该问题随后又明显随机地再次出现......有些日子比其他日子更频繁。Apache 上的 mod_passenger 也以同样的方式发生这种情况。

难道我做错了什么?

稍后编辑:下面是我对 puma、主动存储和错误的相当标准的配置

ActiveStorage配置

development:
  service: Disk
  root: <%= Rails.root.join("storage") %>
Run Code Online (Sandbox Code Playgroud)

美洲狮配置

# Puma can serve each request in a thread from an internal thread pool.
# The `threads` method setting takes two numbers: a minimum and maximum.
# Any libraries that use thread pools should be configured to match
# the maximum value specified for Puma. Default is …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails puma rails-activestorage

6
推荐指数
1
解决办法
1913
查看次数

在嵌套对象数组中查找和更新值

我有一个对象数组,如下所示:

products = [
  {
    id: 1,
    title: "Product 1",
    specifications: {
      price: 1.55,
      discount: 15,
      attributes: [
        {
          l1: 100,
          l2: 80
          height:200,
          weight: 15,
          parameters: [
            {
              id: 199199 // this is how I identify the parameter
              size: 185 // this is what I want to change
            }, ... 
          ]    
        }, ...
      ]

    }
  }, ...
]
Run Code Online (Sandbox Code Playgroud)

...以及我要应用的参数更改数组,例如:将大小更改为 189,其中 product.specifications.attributes.parameters.id == 199199。

我想在不扁平化任何元素的情况下这样做,因为它们是 Vue.js 数据结构的一部分,它会破坏反应性。

我怎么能这样做?我愿意使用 Underscore 或 lo-dash

javascript underscore.js lodash vue.js

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

在 rspec after(:suite) 中访问测试结果

目前,我在日志文件中收集了数千个 rspec 示例的输出,当出现故障时,我会解析输出并发出各种通知。

我想摆脱这个旧代码并以更文明的方式进行,例如,在 after(:suite) 块中,如果我可以访问失败的示例数组,那么我可以发送通知。

那么如何获取在 after(:suite) 块中失败的示例数组呢?

ruby rspec ruby-on-rails

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

Apache httpd请求/响应日志记录

有没有办法用Apache记录请求(完整的GET URI,响应和POST数据和响应)内容?我有一堆游戏通过HTTP与客户端进行通信,他们使用不同的变量并输出各种各样的东西.

我想把所有这些内容都推送到数据库中进行进一步处理,这样我就可以逐步报告游戏玩法.无法修改服务器端游戏文件本身来记录这些数据,它们太多(数千).

它不是很多数据,每个请求和响应数据最多512个字节或1K.

无法设置清漆或鱿鱼来做到这一点,我有很多后端服务器,无法添加另一层到此,我在app服务器之前发生了大量的事情(负载均衡,防火墙,诸如此类).

TIA

linux apache

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

在Rails应用程序中的查询运行时更改表名

我在Apache + mod_passenger上有一个胖的多租户Rails应用程序,它从PostgreSQL表输出产品价格,如下所示:

Table "public.products"
Column | Type
id     | bigint
name   | character varying(100)
price  | numeric(8,2)
Run Code Online (Sandbox Code Playgroud)

然后在products.rb我有......

class Product < PostgresDatabase
     self.table_name = "products"

     # ... yadda yadda

end
Run Code Online (Sandbox Code Playgroud)

我想要的是以一种非常具体的方式对"产品"表进行分区,这样我最终会得到像每个租户的products_TENANT-ID(基本上是主要产品表的视图,但这是另一个故事)并能够像这样查询:

Products.for_tenant(TENANT-ID).where(:name => "My product")......
Run Code Online (Sandbox Code Playgroud)

我想我可以创建一个方法:

class Product < PostgresDatabase
     self.table_name = "products"

     # ... yadda yadda
     def for_tenant(tid)
          self.table_name = "products_" + tid.to_s
          self
     end
end
Run Code Online (Sandbox Code Playgroud)

但考虑到有大量流量(每秒数千个请求),这会对应用程序产生什么样的影响?有什么我想念的吗?我应该尝试不同的策略吗?

非常感谢您的任何反馈/想法!

ruby activerecord ruby-on-rails rails-activerecord

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