for i := 0; i < 500; i++ {
docID := strconv.Itoa(i)
//update := map[string]interface{}{"name": "xxx"}
doc := Goods{
Id: int64(i),
Name: "name" + docID,
Price: float64(i),
Year: 2022,
LastMonthSales: i,
Favorites: i,
}
esClient.BulkCreate(IndexName, docID, docID, doc)
}
//因为是异步处理,这里需要等待本地channel提交
//time.Sleep(3 * time.Second)
这一块代码为什么需要sleep?难道不能自动提交吗?我们直接将数据扔给ES它自己提交不行吗?
但是client.Bulk()最后在调用Do方法 这种方式就可以,也不用进行sleep阻塞。