小编ton*_*oft的帖子

为什么浏览器不支持 gRPC?

gRPC 基于 HTTP/2,它(假设)被浏览器广泛支持。因此,我觉得浏览器中的 gRPC 应该没有问题。

但是,很明显存在问题。协议grpc web是不同的,因为“由于浏览器限制”而存在。还有许多博客文章描述了部署复杂的技术堆栈以使 gRPC 从浏览器工作。

我错过了实际问题 - 为什么 gRPC 不能简单地在浏览器中工作?

grpc grpc-web

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

如何从XML配置文件设置Spring属性?

我有一些使用属性的spring配置,如下所示:

<bean id="foo" class="...">
    <constructor-arg value="${aProperty}"/>
</bean>
Run Code Online (Sandbox Code Playgroud)

显然,我知道可以通过拥有属性文件(例如example.properties)来解析此属性:

aProperty=value
Run Code Online (Sandbox Code Playgroud)

并在Spring配置中导入此文件:

<bean id="propertyConfiguration" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
    <property name="locations">
        <list>
            <value>example.properties</value>
        </list>
    </property>
</bean>
Run Code Online (Sandbox Code Playgroud)

我的问题是,是否可以直接在XML文件中设置此属性,而不必创建单独的属性文件?这样的事情将是理想的:

<set-property name="aProperty" value="value"/>
Run Code Online (Sandbox Code Playgroud)

Maven对于pom文件具有类似的功能:

<properties><aProperty>value</aProperty></properies>
Run Code Online (Sandbox Code Playgroud)

xml configuration spring

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

可以在不模拟对象的其他属性的情况下模拟 python 构造函数吗?

是否可以在继续使用同名其他字段/函数的生产版本的同时模拟 python 构造函数?例如,给定生产代码:

class MyClass:
    class SubClass:
        def __init__(self) -> None:
            print("\nreal sub init called")

        class SubSubClass:
            def __init__(self) -> None:
                print("\nreal sub sub init called")
Run Code Online (Sandbox Code Playgroud)

以及以下测试代码:

class FakeSubClass:
    def __init__(self) -> None:
        print("\nfake init called")


def test():
    MyClass.SubClass()
    MyClass.SubClass.SubSubClass()

    MyClass.SubClass = Mock(side_effect=FakeSubClass)

    MyClass.SubClass()
    MyClass.SubClass.SubSubClass()
Run Code Online (Sandbox Code Playgroud)

我们得到以下输出:

real sub init called

real sub sub init called

fake init called
Run Code Online (Sandbox Code Playgroud)

请注意,最后一行MyClass.SubClass.SubSubClass()没有创建真正的 SubSubClass,因为此时它是 SubClass 模拟的自动创建的属性。

我想要的输出如下:

real sub init called

real sub sub init called

fake init called

real sub sub …
Run Code Online (Sandbox Code Playgroud)

python unit-testing mocking python-mock

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

哪些演员应该成为持久的?

让我们想象一个典型的 Akka 应用程序,它具有一个树状 Actor 结构,即少量 (2-3) 数量的顶级 Actor,它们管理着层次结构底部的潜在数千个小型 Actor。似乎有两种方法可以实现持久化:

  1. 只让顶级演员持久化。儿童演员依靠他们的父母进行任何状态恢复等。
  2. 让所有的儿童演员都坚持不懈。我们最终可能会得到数千个持久性 ID,每个参与者都可以恢复自己的状态。

在这些方法之间进行选择时有哪些考虑因素?是否有任何典型的用例适合一个而不适合另一个?

这个问题应该是抽象的,但这里有一个例子。假设我们为应用程序的每个用户都有一个角色,并且这些角色共享同一个父角色。如果我们想保留每个用户的电子邮件地址及其任何更新,我们可以让每个用户角色持久化,或者我们可以让顶级角色持久化。

akka akka-persistence

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