投稿時間:2022-08-18 02:29:52 RSSフィード2022-08-18 02:00 分まとめ(37件)

カテゴリー等 サイト名等 記事タイトル・トレンドワード等 リンクURL 頻出ワード・要約等/検索ボリューム 登録日
AWS AWS Big Data Blog New row and column interactivity options for tables and pivot tables in Amazon QuickSight – Part 1 https://aws.amazon.com/blogs/big-data/part-1-new-row-and-column-interactivity-options-for-tables-and-pivot-tables-in-amazon-quicksight/ New row and column interactivity options for tables and pivot tables in Amazon QuickSight Part Amazon QuickSight is a fully managed cloud native business intelligence BI service that makes it easy to create and deliver insights to everyone in your organization You can make your data come to life with rich interactive charts and create beautiful dashboards to share with thousands of users either directly within a QuickSight application or embedded in … 2022-08-17 16:18:47
python Pythonタグが付けられた新着投稿 - Qiita Codeforces Round #814 (Div. 2)のA, B, C問題をPythonで解く https://qiita.com/iona/items/030398de10f5de52b1b6 codeforcesrounddiv 2022-08-18 01:56:08
python Pythonタグが付けられた新着投稿 - Qiita 【Python】DjangoでOracleに接続する際にサービス名を指定したい https://qiita.com/someone7140/items/718947b224deac7da37a oracle 2022-08-18 01:15:49
Ruby Rubyタグが付けられた新着投稿 - Qiita Fakerが理解不足でエラーが出たので調べてみた https://qiita.com/shuhei_m/items/060dd9175226a6023aa0 faker 2022-08-18 01:01:41
Linux Ubuntuタグが付けられた新着投稿 - Qiita Apache,Tomcat,MySQL Web3層システム構築(Ubuntu 18.04.3) https://qiita.com/maplejava/items/aa928961f0c6289f525d xmysqlcommunityservergpl 2022-08-18 01:19:02
Ruby Railsタグが付けられた新着投稿 - Qiita Fakerが理解不足でエラーが出たので調べてみた https://qiita.com/shuhei_m/items/060dd9175226a6023aa0 faker 2022-08-18 01:01:41
海外TECH DEV Community Backend-for-Frontend: the demo https://dev.to/nfrankel/backend-for-frontend-the-demo-2240 Backend for Frontend the demoIn one of my earlier posts I described the Backend for Frontend pattern In short it offers a single facade over multiple backend parts Moreover it provides each client type e g desktop mobile exactly the data that it needs and not more in the format required by this client type The use caseImagine the following use case In a e commerce shop the home page should display multiple unrelated data at once Products The business could configure which items are shown on the home page They could be generic hero products or personalized products that the customer ordered previously News Again the newsfeed could be generic or personalized Profile related informationCart contentNon business related information such as build number build timestamp version etc Depending on the client we want more or less data For example on a client with limited display size we probably want to limit a product to its name and its image On the other hand on desktop we are happy to display both the above plus a catch phrase or a more catchy and longer name and the full description Every client requires its specific data and for performance reasons we want to fetch them in a single call It sounds like a use case for BFF Setting up the demoIn order to simplify things I ll keep only three sources of data products news and technical data Three unrelated data sources are enough to highlight the issue In the demo I m using Python and Flask but the underlying technology is irrelevant since BFF is an architectural pattern The initial situation is a monolith The monolith offers an endpoint for each data source and a single aggregating endpoint for all of them app route def home return products products news news info debug Somehow get the data internally e g from the databaseAt this point everything is fine We can provide different data depending on the client If we want to put the responsibility on the client we provide a dedicated endpointIf we want it server side we can read the User Agent from the request or agree on a specific X HTTP header As it doesn t add anything to the demo I won t provide different data depending on the client in the following Migrating to microservicesAt one point the organization decides to migrate to a microservices architecture The reason might be because the CTO read about microservices in a blog post because the team lead wants to add microservices on its resume or even because the development grew too big and the organization do need to evolve In any case the monolith has to be split in two microservices a catalog providing products and a newsfeed providing news Here s the code for each microservice app route info def info return debug app route products def get products return jsonify products Each microservice has its own debug endpointThe payload is not an object anymore but an array app route info def info return debug app route news def get news return jsonify news As aboveNow each client needs two calls and filter out data that are not relevant Dedicated backend for frontendBecause of the issues highlighted above a solution is to develop one application that does the aggregation and filtering There should be one for each client type and it should be cared for by the same team as the client Again for this demo it s enough to have a single one that only does aggregation app route def home products requests get products uri json catalog info requests get catalog info uri json news requests get news uri json news info requests get news info uri json return products products news news info catalog catalog info news news info Get dataGet debug infoThe returned JSON should be designed for easy consumption on the client side To illustrate it I chose for the debug data to be nested instead of top level Backend for frontend at the API Gateway levelIf you re offering APIs whether internally or to the outside world chances are high that you re already using an API Gateway If not you should probably deeply consider starting to In the following I assume that you do use one In the previous section we developed a dedicated backend for frontend application However requests already go through the gateway In this case the gateway can be seen as a container where to deploy BFF plugins I ll be using Apache APISIX to demo how to do it but the idea can be replicated on other gateways as well First things first there s no generic way to achieve the result we want For this reason we cannot rely on an existing plugin but we have to design our own APISIX documents how to do so Our goal is to fetch data from all endpoints as above but via the plugin First we need to expose a dedicated endpoint e g bff desktop or bff phone APISIX allows such virtual endpoints via the public api plugin Next we need to develop our plugin bff Here s the configuration snippet routes uri plugins bff public api For demo purposes I preferred to set it at the root instead of bff Declare the two plugins Note that I m using the stand alone mode First we need to describe the plugin and not forget to return it at the end of the file local plugin name bff plugin local M version priority name plugin name schema return M The table needs to be named MIn this scenario priority is irrelevant as no other plugins are involved but public api No schema is necessary as there s no configurationDon t forget to return it A plugin that has a public API needs to define an api function returning an object describing matching HTTP methods the matching URI and the handler function function M api return methods GET uri handler fetch all data endNow we have to define the fetch all data function It s only a matter of making HTTP calls to the catalog and newsfeed microservices Have a look at the code if you re interested in the exact details At this point the single client can query http localhost and get the complete payload In a real life microservices based organization every team should be independent of each other With this approach each can develop its own BFF as a plugin and deploy it independently in the gateway Bonus a poor man s BFFThe microservices architecture creates two problems for clients The need to fetch all data and filter out the unnecessary onesMultiple calls to each serviceThe BFF pattern allows to fix both of them at the cost of custom development regardless whether it s for a dedicated app or a gateway plugin If you re not willing to spend time in custom development you can still avoid by using a nifty plugin of Apache APISIX batch requests The batch requests plugin accepts multiple requests sends them from APISIX via HTTP pipelining and returns an aggregated response to the client This improves the performance significantly in cases where the client needs to access multiple APIs batch requestsIn essence the client would need to send the following payload to a previously configured endpoint timeout pipeline method GET path products method GET path news method GET path catalog info method GET path news info The response will in turn look like status reason OK body ret products headers Connection keep alive Date Sat Apr GMT Content Type application json Content Length Server APISIX web server status reason OK body ret news headers Connection keep alive Date Sat Apr GMT Content Type application json Content Length Server APISIX web server status reason OK body ret version headers Connection keep alive Date Sat Apr GMT Content Type application json Content Length Server APISIX web server status reason OK body ret version headers Connection keep alive Date Sat Apr GMT Content Type application json Content Length Server APISIX web server It s up to the client to filter out unnecessary data It s not as good as true BFF but we still managed to make a single call out of ConclusionA microservices architecture brings a ton of technical issues to cope with Among them is the need to dispatch only the required data to each kind of client The BFF pattern aims to cope with this issue In the previous post I described the pattern from a theoretical point of view In this post I used a very simple ecommerce use case to demo how to implement BFF with and without the help of Apache APISIX The complete source code for this post can be found on GitHub ajavageek backend for frontend To go further Pattern Backends For FrontendsThe API gateway pattern versus the Direct client to microservice communicationAPI Gateway vs Backend For FrontendOriginally published at A Java Geek on August th 2022-08-17 16:42:51
海外TECH DEV Community Multiprocessing communication with FIFO queues https://dev.to/____marcell/multiprocessing-communication-with-fifo-queues-4ak4 Multiprocessing communication with FIFO queuesThis is part of a series of posts talking about FIFO and techniques for IPC inter process comunication today I m gonna explore IPC between parent and child processes for asynchronous programming one problem that arises when you fork a process is communication between the parent process and the child process or between child processes usually this is solved in the standard library of the language or a third party library node s exec and spawn for example handles communication between the process for you using something very similar with what we re gonna do But how does that work and what can we do if we want to have more control over it Let s explore some options Single Queue Multiple Processes Without Error HandlingSingle Queue Multiple Processes With Error Handling Simple Queue Spawning Multiple Processes Without Error handling The codeI always like to start with the code because reading the code will give you a general idea of what s going on the following is very simple ruby code it s written in Ruby but the idea can be used in any language and the point is the idea not the implementation read from fifo reads from the fifo file line by line push to fifo writes a line to the fifo file and process queue reads from the input file forks the process passes the url that was read from the fifo file to the child process the child process makes a http request and writes the result to an output fifo file since process queue is a recursive function that runs forever any new line added to the fifo file will be processed require uri require net http require json OUTPUT FIFO output fifo INPUT FIFO input fifo unless File exist OUTPUT FIFO File mkfifo OUTPUT FIFO File chmod OUTPUT FIFO endunless File exist INPUT FIFO File mkfifo INPUT FIFO File chmod INPUT FIFO enddef read from fifo fifo rpipe File open fifo r res while r rpipe read n res lt lt r end resenddef push to fifo endpoint fifo wpipe File open fifo w wpipe write endpoint n wpipe flushenddef process queue rpipe File open INPUT FIFO r url while r rpipe read n url lt lt r end fork do puts Processing url PID Process pid uri URI url res Net HTTP get response uri puts JSON parse res body quote push to fifo JSON parse res body quote OUTPUT FIFO end process queueendpush to fifo INPUT FIFO push to fifo INPUT FIFO push to fifo INPUT FIFO process queue Above is a terminal running the program and below is another terminal where I pushed the url to the fifo file the following is my attempt at drawing what is happening in more detail Simple Queue Spawning Multiple Processes With Error HandlingOne thing that was missing from our last implementation was error handling if something goes wrong in the process that tries to make the GET request the message is lost the process is going to crash or hang forever we re not gonna try again or get any response We want to improve the resilience or our application and make it more fault tolerant What we can do in this situation is create another queue to process errors also called a dead letter queue any time we have a error processing a message we push the message to the dead letter queue to be processed later The CodeTo do that we just need to push the error to the dead letter queue and to also process the dead letter to do add we add another process just to process the dead letter queue both processes the main that processes the input queue and the process responsible for the dead letter queue run at the same time and wait for messages to get to the queue require uri require net http require json OUTPUT FIFO output fifo INPUT FIFO input fifo DEADLETTER FIFO deadletter fifo unless File exist OUTPUT FIFO File mkfifo OUTPUT FIFO File chmod OUTPUT FIFO endunless File exist INPUT FIFO File mkfifo INPUT FIFO File chmod INPUT FIFO endunless File exist DEADLETTER FIFO File mkfifo DEADLETTER FIFO File chmod DEADLETTER FIFO enddef read from fifo fifo rpipe File open fifo r res while r rpipe read n res lt lt r end resenddef push to fifo endpoint fifo wpipe File open fifo w wpipe write endpoint n wpipe flushenddef process deadletter puts Waiting for messages in the dead letter queue rpipe File open DEADLETTER FIFO r url while r rpipe read n url lt lt r end fork do begin puts Dead Letter Processing url PID Process pid uri URI url res Net HTTP get response uri puts JSON parse res body quote push to fifo JSON parse res body quote OUTPUT FIFO rescue gt e puts error e end end process deadletterenddef process queue puts Waiting for messages in the process queue rpipe File open INPUT FIFO r url while r rpipe read n url lt lt r end fork do puts Processing url PID Process pid begin uri URI url res Net HTTP get response uri puts JSON parse res body quote push to fifo JSON parse res body quote OUTPUT FIFO rescue gt e puts Error trying to process url sending message to deadletter queue push to fifo url DEADLETTER FIFO end end process queueendfork do process deadletterendprocess queueIf we run the previous code we get the following responseNow we have two processes waiting for messages in the queue if we append a message to the input fifo file withecho gt gt input fifoWe get the responseNothing new here we pass a valid url and everything worked fine but if we pass a invalid URL we can see the dead letter queue workingecho invalid url gt gt input fifoThe first process fails and send the message to the dead letter queue the dead letter queue process starts processing the new message in the queue it also fails since in this case it s a invalid URL Adding A Delay To The Second CallIn a real situation we would want to add a delay to the second call if the service that we re hitting is not working now it s unlikely that it s going to be working some milliseconds later what we want to do in this case is to add a delay to the process that handles the dead letter queue we have a lot of different approaches to do that we can increase the time we do the retry for every retry we can filter out some errors like the invalid URL case since it s never going to work in this case Next postIn the next post I m gonna experiment with other ways of setting up the queues and processing the messages 2022-08-17 16:06:02
Apple AppleInsider - Frontpage News How to avoid AirTag batteries dying now that Apple isn't showing life remaining https://appleinsider.com/articles/22/08/17/how-to-avoid-airtag-batteries-dying-now-that-apple-isnt-showing-life-remaining?utm_medium=rss How to avoid AirTag batteries dying now that Apple isn x t showing life remainingYou can no longer check the battery level in your AirTags whenever you want but there are things you can ーand should ーdo to make sure they don t die on you unexpectedly This could be the shortest guide in the history of Apple For the answer to how you check your AirTags battery level is that you can t It s not that Apple has made a chance for the forthcoming iOS it is that it has also changed iOS Previously you could open the Find My app tap on a named AirTag and see a battery icon Read more 2022-08-17 16:59:18
Apple AppleInsider - Frontpage News Apple releases first trailer for 'The Greatest Beer Run Ever,' coming Sept. 30 https://appleinsider.com/articles/22/08/17/apple-releases-first-trailer-for-the-greatest-beer-run-ever-coming-sept-30?utm_medium=rss Apple releases first trailer for x The Greatest Beer Run Ever x coming Sept Apple TV has released the first trailer for upcoming original film The Greatest Beer Run Ever which stars Zac Efron and is set to premiere on Sept The Greatest Beer Run EverThe The Greatest Beer Run Ever tells the true story of Chick Donahue who left his home in New York in to bring beer to his friends serving in Vietnam Read more 2022-08-17 16:53:19
海外TECH Engadget Klipsch's tiny T10 wireless earbuds arrive as a $2,500 'bespoke' model https://www.engadget.com/klipsch-t10-bespoke-wireless-earbuds-161128488.html?src=rss Klipsch x s tiny T wireless earbuds arrive as a x bespoke x modelKlipsch has finally delivered the T true wireless earbuds it was supposed to ship in fall but they ve changed a lot in the past two years The company and Ear Micro have released the T Bespoke Ear Computers yes really as a hand built custom design aimed squarely at luxury buyers who refuse to own the same earbuds as everyone else You can ask Klipsch to build the charging case using materials like gold leather vegan and otherwise and wood and the bud frames using pearl or ceramic zirconia You can ask for special leather motifs and even have jewelers add precious stones or carvings The T has some technical prowess to match the luxurious exterior at least Klipsch touts kHz bit audio when using the LDAC codec and believes the dual Cadence Tensilica DSPs class D amps and Sonion transducers will make the most of your music Despite the incredibly small bud size you can expect nine hours of listening per charge as well as active noise cancelation KlipschAnd yes Klipsch knows it would normally be ridiculous to spend a fortune on earbuds whose batteries rarely last more than a few years The T design is built to be repaired and upgraded with relatively little effort Provided Klipsch remains committed to support you could keep using your one of a kind audio indefinitely You will pay a steep premium as you might have guessed Klipsch estimates typical T prices between and and you can easily pay more to add gems and other unique touches That s a lot more than the the company targeted back in However this might make more sense Klipsch already has the T II to court mainstream buyers who would otherwise turn to AirPods or Galaxy Buds and it s not clear the original T s promised AI features would have justified the price The finished product targets a niche but largely unserved group ーthe same upscale audience that wouldn t flinch at a Louis Vuitton smartwatch or an electric supercar 2022-08-17 16:11:28
Cisco Cisco Blog ARC Advisory: Cisco leads in industrial networking https://blogs.cisco.com/internet-of-things/arc-advisory-cisco-leads-in-industrial-networking digital 2022-08-17 16:02:16
海外科学 NYT > Science Walensky, Citing Botched Pandemic Response, Calls for C.D.C. Reorganization https://www.nytimes.com/2022/08/17/us/politics/cdc-rochelle-walensky-covid.html coronavirus 2022-08-17 16:08:32
海外TECH WIRED 34 Best Back-to-School Deals on Laptops, Headphones, and More https://www.wired.com/story/back-to-school-deals-2022/ essential 2022-08-17 16:37:00
海外TECH WIRED The Android 13 Privacy Settings You Should Update Now https://www.wired.com/story/android-13-privacy-security-settings/ security 2022-08-17 16:27:13
金融 金融庁ホームページ 令和4年7月及び8月に開催された業界団体との意見交換会において、金融庁が提起した主な論点を公表しました。 https://www.fsa.go.jp/common/ronten/index.html#July 意見交換会 2022-08-17 17:00:00
金融 金融庁ホームページ 国際金融センター特設ページを更新しました。 https://www.fsa.go.jp/internationalfinancialcenter/index.html alfinancialcenterjapan 2022-08-17 17:00:00
ニュース BBC News - Home UK weather: Storms and rain bring flash floods to southern England https://www.bbc.co.uk/news/uk-62574134?at_medium=RSS&at_campaign=KARANGA office 2022-08-17 16:09:36
ニュース BBC News - Home Benjamin Mendy: Accuser says footballer threatened to kidnap her https://www.bbc.co.uk/news/uk-england-manchester-62575217?at_medium=RSS&at_campaign=KARANGA hears 2022-08-17 16:03:20
ニュース BBC News - Home England v South Africa: Kagiso Rabada & Anrich Nortje rip through hosts before Lord's rain https://www.bbc.co.uk/sport/cricket/62564637?at_medium=RSS&at_campaign=KARANGA England v South Africa Kagiso Rabada amp Anrich Nortje rip through hosts before Lord x s rainEngland are put under huge pressure by some tremendous South Africa bowling before rain wipes out most of the first day of the first Test at Lord s 2022-08-17 16:41:46
Azure Azure の更新情報 General availability: Network security groups support for private endpoints https://azure.microsoft.com/ja-jp/updates/general-availability-of-network-security-groups-support-for-private-endpoints/ endpoints 2022-08-17 16:34:55
Azure Azure の更新情報 General availability: User-defined routes support for private endpoints https://azure.microsoft.com/ja-jp/updates/general-availability-of-user-defined-routes-support-for-private-endpoints/ endpoints 2022-08-17 16:34:40
Azure Azure の更新情報 Public preview: Microsoft Azure Load Testing supports private endpoints testing https://azure.microsoft.com/ja-jp/updates/public-preview-microsoft-azure-load-testing-supports-private-endpoints-testing/ Public preview Microsoft Azure Load Testing supports private endpoints testingWith Azure Load Testing you can now run load tests against private endpoints endpoints deployed in a virtual network public endpoints with access restrictions restricting client IP addresses etc 2022-08-17 16:02:28
Azure Azure の更新情報 Azure SQL—General availability updates for mid-August 2022 https://azure.microsoft.com/ja-jp/updates/azure-sql-general-availability-updates-for-midaugust-2022/ azure 2022-08-17 16:02:26
Azure Azure の更新情報 Generally available: Hierarchical forecasting for Azure Machine Learning https://azure.microsoft.com/ja-jp/updates/generally-available-hierarchical-forecasting-for-azure-machine-learning/ Generally available Hierarchical forecasting for Azure Machine LearningHierarchical forecasting now generally available offers you the capability to produce consistent forecasts for all levels of your data 2022-08-17 16:02:14
Azure Azure の更新情報 Azure Machine Learning—Public preview updates for August 2022 https://azure.microsoft.com/ja-jp/updates/azure-machine-learning-public-preview-updates-for-august-2022/ pipelines 2022-08-17 16:02:08
Azure Azure の更新情報 Public preview: Azure Database for PostgreSQL https://azure.microsoft.com/ja-jp/updates/public-preview-azure-database-for-postgresql/ citus 2022-08-17 16:02:00
Azure Azure の更新情報 General availability: Server logs for Azure Database for MySQL - Flexible Server https://azure.microsoft.com/ja-jp/updates/general-availability-server-logs-for-azure-database-for-mysql-flexible-server/ General availability Server logs for Azure Database for MySQL Flexible ServerEnable server logs and log types for detailed insights of server activities to help you identify and troubleshoot potential issues 2022-08-17 16:01:53
Azure Azure の更新情報 General availability: Reserved instance pricing for Azure Cache for Redis Enterprise https://azure.microsoft.com/ja-jp/updates/general-availability-reserved-instance-pricing-for-azure-cache-for-redis-enterprise/ General availability Reserved instance pricing for Azure Cache for Redis EnterpriseGain up to a percent discount with reserved pricing on the Enterprise tiers of Azure Cache for Redis by committing to spend for one or three years 2022-08-17 16:01:45
Azure Azure の更新情報 Public preview: Backup database with S3-compatible storage for Arc-enabled SQL MI https://azure.microsoft.com/ja-jp/updates/public-preview-backup-database-with-s3compatible-storage-for-arcenabled-sql-mi/ destination 2022-08-17 16:01:41
Azure Azure の更新情報 Public preview: App Configuration geo replication support https://azure.microsoft.com/ja-jp/updates/public-preview-app-configuration-geo-replication-support/ azure 2022-08-17 16:01:32
Azure Azure の更新情報 Public preview: Use managed identity-based authentication to enable Azure Monitor container insights https://azure.microsoft.com/ja-jp/updates/public-preview-use-managed-identitybased-authentication-to-enable-azure-monitor-container-insights/ authentication 2022-08-17 16:01:26
Azure Azure の更新情報 Public preview: Azure Monitor basic logs, archive, restore and search jobs https://azure.microsoft.com/ja-jp/updates/public-preview-azure-monitor-basic-logs-archive-restore-and-search-jobs/ china 2022-08-17 16:01:18
Azure Azure の更新情報 Generally available: Azure Monitor container insights agent renaming https://azure.microsoft.com/ja-jp/updates/generally-available-azure-monitor-container-insights-agent-renaming/ Generally available Azure Monitor container insights agent renamingContainer insights agent is being renamed from OMSAgent to Azure Monitor agent along with some related resource name changes Please update your alerts queries and scripts to avoid any issues 2022-08-17 16:01:12
Azure Azure の更新情報 Public preview: AKS DevX extension for Visual Studio Code https://azure.microsoft.com/ja-jp/updates/public-preview-aks-devx-extension-for-visual-studio-code/ actions 2022-08-17 16:01:05
Azure Azure の更新情報 Generally available: Kubernetes 1.24 support https://azure.microsoft.com/ja-jp/updates/generally-available-kubernetes-124-support/ advantage 2022-08-17 16:00:58
Azure Azure の更新情報 Generally available: Azure Dedicated Host Support https://azure.microsoft.com/ja-jp/updates/generally-available-azure-dedicated-host-support/ azure 2022-08-17 16:00:53

コメント

このブログの人気の投稿

投稿時間:2021-06-17 05:05:34 RSSフィード2021-06-17 05:00 分まとめ(1274件)

投稿時間:2021-06-20 02:06:12 RSSフィード2021-06-20 02:00 分まとめ(3871件)

投稿時間:2020-12-01 09:41:49 RSSフィード2020-12-01 09:00 分まとめ(69件)