Go のキャッシュ データの有効期間:map.Store(key,value,expiration) 構文で設定します。ここで、expiration は time.Duration タイプの有効期間です。たとえば、ユーザー オブジェクトをキャッシュに保存し、5 分の有効期間を設定します: userCache.Store("my-user", user, 5 * time.Minute)。期限切れのデータは、定期的なクリーニングを通じてキャッシュの有効性を維持します。
Go のキャッシュされたデータの有効期限
キャッシュは、Web アプリケーションのパフォーマンスを向上させるための一般的な手法です。これには、元のデータ ソースにアクセスするときの待ち時間を短縮するために、頻繁に要求されるデータのコピーが保存されます。 Go では、sync.Map
を使用してキャッシュを実装できます。ただし、キャッシュの有効性を確保するには、キャッシュされたデータの有効期間を設定する必要があります。 sync.Map
来实现缓存。然而,为了确保缓存的有效性,我们必须设定缓存数据的有效期。
设定有效期的语法
可以通过以下语法设定缓存数据的有效期:
map.Store(key, value, expiration)
其中:
map
是 sync.Map
实例key
是缓存键value
是缓存值expiration
是有效期,以 time.Duration
类型表示实战案例
假设我们需要缓存一个用户对象,并将其有效期设置为 5 分钟。我们可以使用以下代码段:
package main import ( "sync" "time" ) var userCache = sync.Map{} func main() { // 创建一个用户对象 user := &User{Name: "John Doe", Email: "john.doe@example.com"} // 为用户对象设置 5 分钟的有效期 expiration := 5 * time.Minute // 将用户对象存储到缓存中 userCache.Store("my-user", user, expiration) }
在上面的示例中,我们创建了一个 sync.Map
实例名为 userCache
,并使用 Store
方法将用户对象存储在缓存中。我们还指定了有效期为 5 分钟。之后,我们可以在任何地方访问缓存数据:
// 从缓存中获取用户对象 user, ok := userCache.Load("my-user") if ok { // 处理用户对象 }
如果缓存数据已过期,Load
方法将返回 nil
map
is sync .Map code> 例
key
はキャッシュ キーです。value
はキャッシュ値です。expiration
は、time.Duration
タイプで表される有効期間です。userCache
という名前の sync.Map
インスタンスを作成し、Store
コードを使用します。 > メソッドはユーザー オブジェクトをキャッシュに保存します。また、有効期間を 5 分間に指定します。その後、どこからでもキャッシュされたデータにアクセスできるようになります: 🎜rrreee🎜 キャッシュされたデータの有効期限が切れた場合、Load
メソッドは nil
を返します。キャッシュの有効性は、期限切れのキャッシュ エントリを定期的に消去することで維持できます。 🎜以上がGolang のキャッシュ データの有効期間を設定するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。