IT |
InfoQ |
Amazon Interactive Video Service Announces Real-Time Streaming |
https://www.infoq.com/news/2023/08/aws-ivs-real-time-streaming/?utm_campaign=infoq_content&utm_source=infoq&utm_medium=feed&utm_term=global
|
Amazon Interactive Video Service Announces Real Time StreamingAmazon recently announced IVS Real Time Streaming a new option of the Interactive Video Service to deliver real time live streams for latency sensitive use cases To address different network conditions for the viewers IVS supports layered encoding simulcast By Renato Losio |
2023-08-26 05:49:00 |
IT |
ITmedia 総合記事一覧 |
[ITmedia News] 海外サッカーってどうやって見りゃいいんだ! サブスク&放送の状況をまとめたら複雑すぎた |
https://www.itmedia.co.jp/news/articles/2308/26/news063.html
|
itmedia |
2023-08-26 14:35:00 |
TECH |
Techable(テッカブル) |
CO2排出量算定プラットフォーム「booost GX」、自治体特化の“公共プラン”開始。GX推進・脱炭素化を支援 |
https://techable.jp/archives/217762
|
booostgx |
2023-08-26 05:00:11 |
AWS |
AWS - Webinar Channel |
Accelerate your ML journey with Amazon SageMaker low-code ML tools |
https://www.youtube.com/watch?v=LZbnw3iHU9A
|
Accelerate your ML journey with Amazon SageMaker low code ML toolsThe machine learning ML journey requires continuous experimentation and rapid prototyping to be successful In order to create highly accurate models data scientists have to first experiment with feature engineering model selection and optimization techniques which can be time consuming and expensive In this session learn how low code ML tools including Amazon SageMaker Data Wrangler Amazon SageMaker Autopilot and Amazon SageMaker JumpStart make it easier to experiment faster and bring highly accurate models to production more quickly and efficiently |
2023-08-26 05:09:38 |
python |
Pythonタグが付けられた新着投稿 - Qiita |
d3rlpy: オフライン強化学習ライブラリ |
https://qiita.com/takuseno/items/6776adf887857bbe31c9
|
drlpy |
2023-08-26 14:34:12 |
Ruby |
Rubyタグが付けられた新着投稿 - Qiita |
BundlerのグループによるGitHub Actions (ruby/setup-ruby@v1) におけるRubocopの実行最適化 |
https://qiita.com/yudukikun5120/items/7de6a5148592afea0db5
|
actionsrubysetuprubyv |
2023-08-26 14:39:25 |
技術ブログ |
Developers.IO |
Security-JAWS DAYSに「ECS on Fargate のセキュリティ対策は何をやるべき? 開発者目線で考える」というタイトルで登壇しました #secjaws #secjawsdays |
https://dev.classmethod.jp/articles/security-for-ecs-on-fargate-secjawsdays/
|
SecurityJAWSDAYSに「ECSonFargateのセキュリティ対策は何をやるべき開発者目線で考える」というタイトルで登壇しましたsecjawssecjawsdaysはじめにCX事業本部アーキテクトチームの佐藤智樹です。 |
2023-08-26 05:24:05 |
海外TECH |
DEV Community |
Best regexp alternative for Go. Benchmarks. Plots. |
https://dev.to/karust/best-regexp-alternative-for-go-benchmarks-plots-57jg
|
Best regexp alternative for Go Benchmarks Plots Introduction Don t use regular expressions otherwise you ll have problems instead of that s what the experts say And what is left for the naughty ones who want to efficiently search through a huge number of templates Sure there are cool solutions like Ragel or rec for this specific problem However for my project it seemed impractical to master these fine technologies for the time being In this article we will look at alternatives to the standard regexp library in Go and benchmark them for speed and memory consumption We will also consider the differences between them from a practical point of view AnaloguesAt the moment I ve found the following working alternatives to the default regexp that can be used to find patterns in Go the versions used in the benchmarks are given in brackets go re as simple as possible replaces the default regexp Uses C re to improve performance when dealing with large inputs or complex expressions regexp a feature rich regexp engine for Go It does not have runtime guarantees like the built in regexp package but is compatible with Perl and NET go pcre provides support for Perl compatible regular expressions using libpcre or libpcre JIT compilation is available making this fork much faster than its counterparts On the downside you ll need the libpcre dev dependency rure go regex uses the Rust regex engine with CGo bindings The downside is a Rust library dependency that needs to be compiled gohs hs regex engine designed for high performance It is implemented as a library that provides a simple C API It also requires compilation and linking of third party dependencies go yara A tool for identifying and classifying malware samples Although YARA has functionality for templating and regular expressions it is very limited so I will not include this library in the upcoming tests Existing benchmarksBefore we start comparing the aforementioned solutions it is worth to show how bad things are with the standard regex library in Go I found the project where the author compares the performance of standard regex engines of various languages The point of this benchmark is to repeatedly run regular expressions over a predefined text Go came in rd place in this benchmark From the end LanguageEmail ms URI ms IP ms Total ms Nim RegexNimRust Python PyPyPython GoC STLC MonoAs far as I can tell benchmarking regex engines is not the easiest topic because you need to know implementation and algorithm details for a correct comparison From other benchmarks I can highlight the following Benchmarks Game comparison of engines with optimized versions for each language For example Go is no longer at the bottom but it is still far from ideal there And of course it does not use a native library but a wrapper over PCRE go pcre which was specified in analogues Performance comparison of regular expression engines Comparison of different regex engines PCRE PCRE DFA TRE Oniguruma RE PCRE JIT A comparison of regex engines here the author tries to compare engines using different regular expressions which can complicate things depending on the engine implementation In this benchmark the author s top three engines are Hyperscan PCRE with JIT compilation and Rust regex rure uses it Benchmark Now let s try to compare the analogues with default regex engine libraries of other languages And also see how much faster they are compared to the default Go regex To do this I updated the above project by adding new libraries code Here is what I got after running it on my machine LanguageEmail ms URI ms IP ms Total ms Go RureC SRELLRustNimPHPGo PCREC Net CoreJavascriptGo ReGo HyperscanPerlDartC PCREKotlinJavaPython C STLGoGo RegexpC MonoPs Shortened the table a bit so please check the project fork to see all the results Pss In this case virtualization might have affected the results the tests were performed in a Docker environment on Windows Still you can see how much faster regexps can be with some libraries We even outperformed Rust with a Go library that uses the Rust library ️ Perhaps this is what the author of this solution is trying to explain to us in his repository As a result almost all alternative solutions give us a speedup of times Except for Regexp which turns out to be slower than the standard library Benchmark QuestionsWhile studying the existing benchmarks and the results of Benchmark I was lacking the answers to the following questions How fast do the above libraries process large files How much faster is the processing when grouping regular expressions How fast will regular expressions with no matches in the text be processed How much memory do the different libraries use How many regexps will I be able to compile using grouping Benchmarker differencesTo answer these questions I wrote a small benchmarking program that can be used to compare different regex engines in terms of speed and memory usage If you want to test it yourself or evaluate the correctness of the used methods here is the code The following features of this benchmark are worth mentioning In the tests below I used different regular expressions allRegexps email P lt name gt w d s at s s s s s P lt host gt w d s dot dot s P lt domain gt w allRegexps bitcoin b a km zA HJ NP Z bc ac hj np zAC HJ NP Z allRegexps ssn d d d allRegexps uri w s s s s allRegexps tel d s d s d s d s d In a good way I should have used tricky regular expressions like other benchmark authors do to check the weaknesses of the algorithms But I don t have much insight into the under the hood details of engines so I used general purpose regexps That s why I think it should be possible to evaluate different parameters of libraries from a practical point of view Instead of a static file we will use a string containing our matches repeated many times in memory to simulate files of different sizes var data bytes Repeat byte mail co nümbr SSN FZbgicpjqGjdwVeyHuJJnkLtktZc Й config repeatScanTimes In addition to running the regexps sequentially over the data there will be a separate run with named grouping of regular expressions where they will take the following form P lt name gt regexp P lt name gt regexp P lt name N gt regexp N By the way Hyperscan has a special functionality where we can build a database of regexps and use it against data In the benchmarks I will use this method Unlike in Benchmark for each regexp I will measure the time to find the result without taking into account the compilation time In the end we will get the results for each library and each regexp in the following form Generate data Test data size MBRun RURE bitcoin count mem KB time s ssn count mem KB time ms uri count mem KB time ms tel count mem KB time ms email count mem KB time ms Total Counted Memory MB Duration s Processing large files and grouping regular expressionsBy large file I mean the amount of data generated from our predefined string in memory equal to MB Of course it s hardly a big file but I didn t want to wait hours for results in some cases Also it makes sense to try grouping all regular expressions into one and see how much it affects performance The hypothesis is that a sequential run of regexps over the data should take longer than a single run with a grouped regexp Well let s run the benchmark and see how fast each library processes the data You can do this with my tool as follows Bench all libs repeat the line times MB regexcmp Bench individual libregexcmp rure See all optionsregexcmp hAs a result we have the following data LibEmailTelURISSNBitcoinTotalTotal groupRuresssssssPCREsssssssResssssssHyperscansssssssRegexpsssssssGo regexpsssssssThe plot below shows the processing time of MB of data by all regexps in sequential mode and using grouping Conclusions Grouping can indeed significantly improve execution speed but in some cases it can make it worse The fastest in sequential processing turned out to be Rure with grouping Re Certain regexps may cause problems with some libraries time to find email in Regexp and PCRE Now it is hard to say that some solutions are times faster than the standard library the maximum gain is x Non matching regexpsIn the previous case we simulated the ideal situation where there are always matches in the data But what if there are no hits for regexp in the text how much will that affect performance In this test I additionally added modified regexps for SSN that do not match the data In this case SSN means d d d regexp and Non matching d d d Not a big difference But let s see how it affects the time it takes to find all the matches LibSSNNon matchingTotalTotal groupRuressssPCREssssRessssHyperscanssssRegexpssssGo regexpssssThe plot below shows the time taken to process all regexps sorted by Non matching processing time Conclusions This time is the same the fastest in sequential processing was Rure with grouped expressions Re PCRE is once again different with x time to process non matching regexps in sequential mode Some algorithms are much faster when there are no matches Re Hyperscan Memory consumptionNow let s see how much memory the different solutions consume when processing a MB file Below I have provided the results for each individual regexp and the total amount of memory consumed LibEmail MBTel MBURI MBSSN MBBitcoin MBNon matching KBTotal GBTotal group GBRurePCREReHyperscanRegexpGo regexThe graph below shows the memory used by the libraries to process regexps as in the last test sorted by the time of non mathcing Conclusions Rure surprises with its practically zero memory consumption Regexp is resource hungry consuming significantly more memory than its competitors Re despite its speed is not the most memory efficient solution Go regex is on the good side with relatively low costs in sequential mode Maximum number of regexpsThe main questions seem to be answered Now let s see the maximum number of regexps we can compile with different solutions In this case we will take a single regexp and repeat it many times in groups For this purpose I will use the URI regexp go w s s s s Next I ve listed the results of compiling the regexps along with the memory they use The numbers in the first line are the number of URI expressions in the group LibRureMBPCREMBMBReMBMBMBMBMBHyperscanMBMBMBMBMBMBRegexpMBMBMBMBMBMBGo regexMBMBMBMBMBMBConclusions As we can see some solutions have limitations on the size of compiled regexps Hyperscan not only allows to use a large number of regexps but also uses minimal memory for compiled regexps Regexp and Go Regex have comparable memory consumption and also allow to compile a large number of regexps Re consumes the most memory at compile time ConclusionI hope it was useful for you to learn about alternative solutions for regexps in Go and based on the data I presented everyone will be able to draw some conclusions for themselves which will allow you to choose the most suitable regex solution for your situation We can compare these libraries the algorithms they use their best worst sides in details and for a long time I just wanted to show the difference between them in the most general cases Thus I would advise you to look at rure go for maximum speedup of regexps but if you need the easiest library installation without dependencies that is go re And in the case of handling a large number of regexps hyperscan would be a good choice Also don t forget the cost of using CGo in some libraries As for me I will definitely use these findings in my future project |
2023-08-26 05:10:24 |
海外TECH |
DEV Community |
Simplifying Servlet Security: Keeping Your Web Apps Safe |
https://dev.to/safvan_8/simplifying-servlet-security-keeping-your-web-apps-safe-ce0
|
Simplifying Servlet Security Keeping Your Web Apps Safe IntroductionIn our digital world safeguarding web applications is of paramount importance Imagine your application as a secure vault and servlet security as the lock that guards it In this blog post we ll delve into servlet security step by step and explore the power of various authentication methods that ensure the safety of both our applications and users Getting Started with Servlet SecurityImagine having created an impressive web application Now how can you ensure that only authorized individuals access it This is where authentication comes into play think of it as a secret passphrase granting you access to an exclusive club Your application wants to confirm your identity before granting you entry To implement the first three authentication methods you ll need to add the following to your tomcat users xml file usually found in Tomcat s conf directory this will act as security realm authentication pprovider lt role rolename ADMIN gt lt role rolename CUSTOMER gt lt role rolename CLERK gt lt user username safvan password roles CUSTOMER gt lt user username user password roles CLERK gt lt user username admin password amp amp hghsd roles ADMIN CUSTOMER gt Different Approaches to Verification BASIC Authentication Simplicity at Its BestConsider BASIC authentication as a friendly doorman who asks for your name and password It s like saying Hey I recognize you Come on in However bear in mind that this method is suitable for non sensitive information In BASIC Authentication the client sends a request containing the username and password in plain text The server responds with the requested information or an error The syntax for BASIC Authentication is as follows Authorization Basic lt base encoded username password gt Since the username and password are base encoded this method is not recommended for real world applications due to security concerns DIGEST Authentication A Secure PuzzleNext we have DIGEST authentication Imagine sending a secret message that gets scrambled before being sent The recipient deciphers it and verifies your identity It s like a puzzle only you and the server can solve ensuring your secrets remain secure DIGEST Authentication is a more intricate form of authentication The client initiates a request to the server which responds with a nonce a one time use number and requests the client s authentication The client then responds with the nonce and an encrypted version of the username password and realm a hash The server validates the client hash against its own hash and either provides the requested information or returns an error if the hashes don t match To configure DIGEST Authentication in a Java Servlet application add the following to your web xml file lt security constraint gt lt web resource collection gt lt Define your secure URLs here gt lt url pattern gt secure path lt url pattern gt lt web resource collection gt lt auth constraint gt lt role name gt ROLE MANAGER lt role name gt lt auth constraint gt lt security constraint gt lt login config gt lt auth method gt DIGEST lt auth method gt lt realm name gt myrealm lt realm name gt lt login config gt Keep in mind that DIGEST Authentication should be used over a secure connection due to its vulnerabilities FORM Authentication Your Personalized Access CardNow envision FORM authentication as a personalized invitation to an exclusive event You fill in your details on the invitation card and the app welcomes you stylishly Developers have the flexibility to craft an appealing login page and manage errors gracefully FORM Authentication involves sending user credentials within the body of a POST request This method is widely used for web applications lt h style color red text align center gt Login Page lt h gt lt form action j security check method POST gt lt table border bgcolor cyan align center gt lt tr gt lt td gt Username lt td gt lt td gt lt input type text name j username gt lt td gt lt tr gt lt tr gt lt td gt Password lt td gt lt td gt lt input type password name j password gt lt td gt lt tr gt lt tr gt lt td colspan gt lt input type submit value Login gt lt td gt lt tr gt lt table gt lt form gt CLIENT CERT Authentication The Digital PassportHave you heard of CLIENT CERT authentication It s like having a digital passport Instead of a password you present your digital certificate a unique ID only you possess The server verifies it and upon confirmation grants you access This method is ideal for confidential transactions such as sharing credit card information CLIENT CERT Authentication involves the client providing a digital certificate for authentication The server then validates this certificate to ensure its legitimacy To create Digital certificate using JDK supplied tool key tool To configure CLIENT CERT Authentication use the keytool tool provided by the JDK to generate a digital certificate using the RSA algorithm Here s a sample of how to set it up in the server xml configuration file lt Connector protocol org apache coyote http HttpNioProtocol port maxThreads SSLEnabled true gt lt SSLHostConfig gt lt Certificate certificateKeystoreFile path to mykeystore keystore lt Default user home keystore gt certificateKeystorePassword keystore password type RSA gt lt SSLHostConfig gt lt Connector gt Blending Modes for Enhanced SecurityThe exciting news is that you don t have to stick to just one authentication method With servlet security you can combine and match these authentication methods similar to adding various toppings to a pizza By using BASIC DIGEST FORM and CLIENT CERT methods in harmony you can create a robust shield for your application Essential ConsiderationsWhile these authentication methods provide trustworthy protection they do have limitations For instance CLIENT CERT requires server support for HTTPS Therefore ensure your digital fortress possesses the necessary tools Drawbacks of Manual Authentication and AuthorizationWhen it comes to manually securing a servlet there are certain downsides to be aware of Limited Protection Manual methods might lack advanced security features offered by specialized security frameworks Complexity Implementing manual security can be intricate and prone to errors especially when managing multiple user roles and permissions Maintenance Challenges Manual security can lead to tightly coupled code complicating maintenance and updates Inconsistent Implementation Manual approaches can result in inconsistent security measures across different parts of the application Human Errors Mistakes during implementation can introduce vulnerabilities Lack of Centralized Management Managing user accounts roles and permissions manually becomes complex as the application scales Limited Auditing Manual methods might lack comprehensive auditing and logging features Scalability Issues As the application grows manual management becomes more complex and can impact performance Expertise Dependence Manual security relies on developer expertise which can vary Compliance Challenges Meeting regulatory requirements can be tough without dedicated security frameworks Integration Limitations Manual methods might not integrate |
2023-08-26 05:04:17 |
ニュース |
BBC News - Home |
Newspaper headlines: Trump mugshot and families share Letby fears |
https://www.bbc.co.uk/news/blogs-the-papers-66623560?at_medium=RSS&at_campaign=KARANGA
|
front |
2023-08-26 05:02:55 |
ニュース |
BBC News - Home |
Courtney Lawes: Steve Borthwick says he is 'one of the greats' for England |
https://www.bbc.co.uk/sport/av/rugby-union/66615903?at_medium=RSS&at_campaign=KARANGA
|
Courtney Lawes Steve Borthwick says he is x one of the greats x for EnglandEngland head coach Steve Borthwick describes Courtney Lawes as one of England s greatest players as he prepares to win his th cap |
2023-08-26 05:19:00 |
ニュース |
BBC News - Home |
Oleksandr Usyk v Daniel Dubois: Pundits and pros give predictions for heavyweight world title fight |
https://www.bbc.co.uk/sport/boxing/66547375?at_medium=RSS&at_campaign=KARANGA
|
Oleksandr Usyk v Daniel Dubois Pundits and pros give predictions for heavyweight world title fightBefore Daniel Dubois tries to overcome unified heavyweight champion Oleksandr Usyk on Saturday BBC Sport rounds up predictions from the boxing world |
2023-08-26 05:30:59 |
海外TECH |
reddit |
Post Game Chat 8/25 Royals @ Mariners |
https://www.reddit.com/r/Mariners/comments/161m3ok/post_game_chat_825_royals_mariners/
|
Post Game Chat Royals MarinersPlease use this thread to discuss anything related to today s game You may post anything as long as it falls within stated posting guidelines You may also post gifs and memes as long as it is related to the game Please keep the discussion civil Discord Seattle Sports Line Score Game Over R H E LOB KC SEA Box Score SEA AB R H RBI BB SO BA SS Crawford J CF Rodríguez Ju B Suárez E C Raleigh RF Hernández T B France T LF Canzone DH Ford M DH Moore D B Rojas J SEA IP H R ER BB SO P S ERA Miller Br Campbell Speier Brash Saucedo Topa Muñoz A KC AB R H RBI BB SO BA B Garcia M SS Witt Jr B Massey B Duffy PH Fermin C Perez S LF Melendez DH Velázquez B Beaty PR Taylor S RF Waters CF Isbel KC IP H R ER BB SO P S ERA Singer Cox Snider Hearn Scoring Plays Inning Event Score B J P Crawford homers on a fly ball to right center field B Cal Raleigh singles on a fly ball to left fielder MJ Melendez Julio Rodriguez scores T Nelson Velazquez singles on a fly ball to right fielder Teoscar Hernandez Salvador Perez scores MJ Melendez to rd T Drew Waters doubles on a line drive to right fielder Teoscar Hernandez Nelson Velazquez to rd T Kyle Isbel singles on a line drive to left fielder Dominic Canzone Nelson Velazquez scores Drew Waters out at home on the throw left fielder Dominic Canzone to catcher Cal Raleigh B Eugenio Suarez singles on a line drive to left fielder MJ Melendez Dominic Canzone scores J P Crawford scores Julio Rodriguez to nd B Josh Rojas singles on a line drive to center fielder Kyle Isbel Dominic Canzone scores T Kyle Isbel homers on a fly ball to right field Matt Beaty scores B Eugenio Suarez doubles on a sharp line drive to center fielder Kyle Isbel J P Crawford scores Highlights Description Length Video Bullpen availability for Seattle August vs Royals Video Bullpen availability for Kansas City August vs Mariners Video Bench availability for Seattle August vs Royals Video Fielding alignment for Seattle August vs Royals Video Bench availability for Kansas City August vs Mariners Video Fielding alignment for Kansas City August vs Mariners Video Starting lineups for Royals at Mariners August Video Breaking down J P Crawford s home run Video Visualizing J P Crawford s swing using bat tracking technology Video Breaking down Bryce Miller s pitches Video Breaking down Brady Singer s pitches Video The distance behind Kyle Isbel s home run Video Kyle Isbel s home run through bat tracking data Video J P Crawford leads off the game with a home run Video Cal Raleigh bloops an RBI single to left center field Video Nelson Velázquez bloops an RBI single to right field Video Kyle Isbel rips an RBI single to left field Video MJ Melendez scores on a throwing error by Miller Video Kyle Isbel makes a great catch in deep left center Video Matt Beaty rips a foul ball after review in the th Video Eugenio Suárez lines a two run single to left field Video Bryce Miller strikes out six over four innings Video Josh Rojas lines an RBI single to center field Video Teoscar Hernandez scores on a wild pitch by Cox Video Kyle Isbel hammers a two run home run to right field Video Eugenio Suarez rips an RBI double to left center Video Brady Singer strikes out six over four innings Video Decisions Winning Pitcher Losing Pitcher Save Campbell ERA Singer ERA Muñoz A SV ERA Attendance Weather Wind °F Clear mph In From LF HP B B B Quinn Wolcott Ryan Wills Doug Eddings Alfonso Marquez Game ended at PM submitted by u Mariners bot to r Mariners link comments |
2023-08-26 05:22:18 |
海外TECH |
reddit |
The Seattle Mariners are tied for 1st place in the AL West. |
https://www.reddit.com/r/baseball/comments/161m312/the_seattle_mariners_are_tied_for_1st_place_in/
|
The Seattle Mariners are tied for st place in the AL West submitted by u Dramatic Rain to r baseball link comments |
2023-08-26 05:21:21 |
コメント
コメントを投稿