假设我想创建一个简单的影院管理平台.它需要几个微服务:movies,cinemas,payments等.
你会如何在Nest.js中做到这一点?我不希望它们在同一个大文件夹中,因为感觉就像制作巨石.我希望它们与他们自己的git存储库分开使用Nest.js项目,这样我以后就可以用Kubernetes来协调它们了.
怎么样?如果它们是两个独立的项目并且只是共享,那么如何从服务连接cinemas到服务movies,比方说,Redis?
编辑:这不是一般的微服务问题.这是Nest.js具体的问题.我阅读了文档,我知道有@Client连接到传输层的装饰器.我只是想知道在哪里使用该装饰器,并且可能会看到一小段代码"有两个独立的Nest.js存储库如何将它们连接在一起以便它们可以相互通信".
我不关心传输层,我可以弄清楚自己.我只是需要一些关于框架本身的建议,因为我认为文档缺乏.
我有两种类型的组件.我们称之为外在和内在.想象一下这样的事情:
<Outer>
<h4>{this.prop.title} ({this.state.withX}/{this.state.total})</h4>
<Inner isX/>
<Inner isX/>
<Inner/>
<Inner/>
</Outer>
Run Code Online (Sandbox Code Playgroud)
我有这个功能:
getInitialState: function() {
return {
total: React.Children.count(this.props.children),
withX: /// ??? ///
};
}
Run Code Online (Sandbox Code Playgroud)
我如何获得这个价值?我试图得到这样的东西:
withX: function() {
var counter = React.Children.forEach(this.props.children, function(child) {
// if...
return //something
});
return counter;
}
Run Code Online (Sandbox Code Playgroud)
但是......我觉得它会让我无处可去.
我越来越TypeError: Cannot read property 'joinColumns' of undefined
at <...>/src/persistence/SubjectOperationExecutor.ts:282:47想创建实体的新对象与关系时的错误。为什么会这样?
在一个实体中,我有:
@Entity('users')
export class User extends WhateverEntity {
@PrimaryGeneratedColumn('uuid')
id: string
@ManyToMany(type => Account, account => account.users, {
cascadeInsert: true,
cascadeUpdate: true,
})
@JoinTable()
accounts: Account[]
}
Run Code Online (Sandbox Code Playgroud)
第二个:
@OneToOne(type => User, user => user.id)
owner: User
@ManyToMany(type => User, user => user.accounts)
users: User[]
Run Code Online (Sandbox Code Playgroud)
我这样保存(在哪里owner: User和users: User[]:
const account = new Account()
account.owner = owner
account.users = users || []
return this.accountRepository.save(account)
Run Code Online (Sandbox Code Playgroud)
即使我注释掉account.owner = …
我想通过它们的字符串键值 ( description)之一对 Javascript 对象进行聚类。我已经尝试了多种解决方案,并希望获得有关如何解决问题的一些指导。
我想要什么:假设我有一个对象数据库。可能有很多(可能有数千个,也可能有数万个)。我需要能够:
categoryId每一个分配一些(代表它们所属的集群)。我还没有尝试解决问题 #2,但这是我尝试解决问题 #1 的方法。
具有 Levenshtein 距离(单链接)的层次聚类- 这里的问题是性能,结果令人满意(我使用了hierarchical-clustering来自 的库npm)但在 150 左右我将不得不等待大约一分钟。不会为数千人工作。
TF-IDF,矢量化 + k-means - 性能很棒。它将轻松通过 5000 个对象。但结果肯定是关闭的(可能是我的实现中的一个错误)。我使用(natural库 fromnpm来计算 TF-IDF 和node-kmeans)。
Bag-of-Words + k-means - 我现在正在尝试实现这个,还没有任何运气。
对于#2,我想过使用朴素贝叶斯(但我还没有尝试过)。
有什么建议?如果对象只是聚集在一起就好了。如果我可以提取组聚类所依据的标签(如从 TF-IDF 中提取),那就更好了。
比方说我有:
"hits": [
{
"_index": "products",
"_type": "product",
"_id": "599c2b3fc991ee0a597034fa",
"_score": 1,
"_source": {,
"attributes": {
"1": [
"a"
],
"2": [
"b",
"c"
],
"3": [
"d",
"e"
],
"4": [
"f",
"g"
],
"5": [
"h",
"i"
]
}
}
},
{
"_index": "products",
"_type": "product",
"_id": "599c4bb4b970c25976ced8bd",
"_score": 1,
"_source": {
"attributes": {
"1": [
"z"
],
"2": [
"y"
]
}
}
Run Code Online (Sandbox Code Playgroud)
每个产品都有属性.每个属性都有ID和值.我可以按属性过滤产品,但是现在我正在从MongoDB创建"可能的属性"列表.我想找到一种方法从ElasticSearch单独生成这样的列表(也许只是查询MongoDB以获取更多数据).
我需要的是:
{
1: [a, z],
2: [b, c, y],
etc.
}
Run Code Online (Sandbox Code Playgroud)
这样的聚合怎么样?获取所有可用的属性(按分组attribute.id …
我试图从给定的缓冲区获取所有接口。为此,我想获取所有令牌并过滤掉除接口之外的所有内容。但是,当我尝试致电 LSP 时:我没有得到任何回复。
local bufnr = vim.api.nvim_get_current_buf()
local params = vim.lsp.util.make_text_document_params()
local result = vim.lsp.buf_request_sync(bufnr, "textDocument/documentSymbol", params, 2000)
print(vim.inspect(result))
Run Code Online (Sandbox Code Playgroud)
我得到的只是一张空地图。我显然错过了一些明显的东西,但我不知道是什么。
{
[2] = {
result = {}
}
}
Run Code Online (Sandbox Code Playgroud) 我知道如何使用PHP创建一个安全的登录系统,包括哈希,盐析和更复杂的安全措施等基础知识.
最近我一直在使用Ratchet和WebSockets.我一直想知道是否可以使用WebSockets创建一个安全的注册/登录系统.
我觉得它可能会奏效.我的疑惑在这里:ws://协议有多安全?如何确保登录用户后是记录的用户?某种会话?令牌?
是否有这样的框架/库/实现?
问题更多的是出于对新的(有点)技术的好奇心.如果它不起作用,我只会去AJAX POST请求.:)
我正在尝试将POST数据从AngularJS发送到Express。目前,我正在尝试通过curl发送一些POST内容。
我已经尝试发送数据。它得到发送,我得到200作为响应。但是,每当我尝试通过req.body通过body-parser访问数据时,都会得到500和我在最底部发布的错误。
我对此事做了很多研究(过去4-5个小时...),我想我检查了以下常见问题:
我投降。StackOverflowers。请帮帮我。
卷曲:
curl -X POST -H "Content-Type: application/json" -d '{"username": "gala", "email": "ga@ga.g", "password": "123"}' localhost:3000/users
Run Code Online (Sandbox Code Playgroud)
express.js
// glowny plik przygotowujacy aplikacje express
// wczytanie zaleznosci
var express = require('express')
var stylus = require('stylus')
var parser = require('body-parser')
var morgan = require('morgan')
var compress = require('compression')
var methodOverride = require('method-override')
// przygotowanie aplikacji, obsluga middleware i na koncu zwrocenie obiektu aplikacji
module.exports = function() {
var app = express() …Run Code Online (Sandbox Code Playgroud) 问题不在于彼此相邻,而是他们都有理由离开并将一个置于另一个之下.我希望他们从左到右一路走,如果另一张卡不适合,请换行到下一行.显示方式:flex工作.
有没有"语义"的方法呢?我唯一能想到的是div在网格中添加一个灵活容器.
我正在使用Meteor和Blaze,但我相信它与它无关.问题在于语义UI和HTML/CSS.
我的HTML看起来像这样:
<div class="ui grid">
<div class="two wide column">
</div>
<div class="twelve wide column">
{{> card}}
{{> card}}
{{> card}}
{{> card}}
{{> card}}
{{> card}}
</div>
<div class="two wide column">
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
每张卡片模板的位置是:
<div class="ui card">
<div class="image">
<img src="http://placehold.it/256x256">
</div>
<div class="content">
<a class="header">Kristy</a>
<div class="meta">
<span class="date">Joined in 2013</span>
</div>
<div class="description">
Kristy is an art director living in New York.
</div>
</div>
<div class="extra content">
<a>
<i class="user icon"></i>
22 Friends
</a> …Run Code Online (Sandbox Code Playgroud) 首先,让我告诉我,我见过与此类似的其他问题,但我认为没有任何问题真正足够详细地回答它(How does one test net.Conn in unit test in Golang?和How does Golang 单元测试中的一个测试 net.Conn?)。
我想测试的是以某种方式响应 TCP 请求的函数。
在最简单的场景中:
func HandleMessage(c net.Conn) {
s, err := bufio.NewReader(c).ReadString('\n')
s = strings.Trim(s, "\n")
c.Write([]byte(s + " whatever"))
}
Run Code Online (Sandbox Code Playgroud)
我将如何对这样的功能进行单元测试,最好使用net.Pipe()不打开实际连接。我一直在尝试这样的事情:
func TestHandleMessage(t *testing.T) {
server, client := net.Pipe()
go func(){
server.Write([]byte("test"))
server.Close()
}()
s, err := bufio.NewReader(c).ReadString('\n')
assert.Nil(t, err)
assert.Equal(t, "test whatever", s)
}
Run Code Online (Sandbox Code Playgroud)
然而,我似乎无法理解将HandleMessage(client)( 或HandleMessage(server)?在测试中实际得到我想要的响应。我可以让它要么阻塞并且根本不会完成,要么它将返回与我在服务器中写入的字符串完全相同。
有人可以帮助我并指出我在哪里犯了错误吗?或者在测试 TCP 功能时指出正确的方向。