Amazonに検索するISBNのリストがあります。私はすでにこれを順番に解決しているので、タスクは並行処理を実装することです。私はcore.async
を使って試しました。私が抱えている問題は、検索が完了した後で、すべての書籍をコレクションにまとめて、ブックランクで並べ替えることができるようにする必要があることです。私はバッファサイズが10の1つのチャンネルを使用しているので、これを行う方法についてはわかりません。私のアプローチは完全に間違っているかもしれません。ヘルプは高く評価されます。非同期チャネルバッファをマージする
(defn get_title_and_rank_for_one_isbn [amazon_report]
(def book_title (get-in amazon_report [:items 0 :item-atributes :title]))
(def sales_rank(get-in amazon_report [:items 0 :SalesRank]))
(def book_isbn(get-in amazon_report [:items 0 :asin]))
(reduce into [[book_title] [book_isbn] [sales_rank]]))
とコール:
(def list_of_isbns (split_isbns "src/clj_amazon/isbn_list.txt"))
(concurrency_test list_of_isbns)
まあまあです。これが私にとってうまくいくかどうかは分かりません。 –