본문 바로가기

[Apple] 슬림 iMac 의 단점? 소리가... 8년동안 쓴 iMac mid 2011이 두 차례 문제(디스플레이, 전원 모듈)이 있어서 새 아이맥을 장만하였습니다. 새 모델은 imac early 2019입니다. 4세대 부터 슈퍼드라이브가 빠지면서 옆 면이 이전 모델에 비해 얇아졌습니다. 예전에 "2012년 iMac :: 두께는 마케팅 수단?"라는 글을 쓴 적이 있는데 막상 구입해서 사용을 하다보니 불편은 다른 곳에 있었습니다. 바로 소리가 예전 2011의 것 보다 떨어진다는 것이지요. 스피커 모듈을 아래 그림처럼 좌측과 우측으로 구성되어 있습니다. 실제 사진은 아래와 같습니다. (큰 차이는 없습니다만 참고용으로) 왼쪽 스피커 쪽에서 아래로 보면 아래와 같은 틈이 있습니다. 하지만 슬림 iMac이 되면서 이 틈은 약 2.3mm 에서 약 2mm 로 1/1..
[macOS] APFS인 SSD를 HFS+로 바꾸기 외장 SSD인데 언제인가부터 APFS(Apple File System)으로 바뀌어 있다. 지우기를 해도 포맷에는 APFS 들 밖에 없다. HFS+ 저널링으로 바꾸려면 diskutil 명령을 이용해야 한다. 1. 터미널을 연다. 2.대상 확인 diskutil list 3. APFS 컨테이너를 지운다. diskutil apfs deleteContainer /dev/disk5 지우고 나면 디스크 유틸리티에는 아래와 같이 Untitled 이라는 이름으로 바뀐다. 이제 Mac OS 확장(저널링)으로 포맷이 가능하다!
[macOS] Trim force 명령 El Captain 이후 (Sierra, High Sierra 포함) 에는 SSD의 트림을 강제로 활성화할 수 있는 옵션이있다. 처음 SSD를 설치하면 아래와 같이 TRIM 지원이 아니요로 나온다. 터미널을 띄워서 trimforce 를 쳐보면 아래와 같이 가능한 목록이 나온다. 활성화하는 명령은 아래와 같다. sudo로 super user로 실행(do) 한다. $ sudo trimforce enable 중간에 아래와 같은 경고 문구가 나온다. 모든 책임은 너가 진다 라는 동의를 하라는 것이다. ...더보기 IMPORTANT NOTICE: This tool force-enables TRIM for all relevant attached devices, even though such devices may n..
[iMac] Mid 2011 - Disk 속도 비교 CTO 옵션으로 HDD 1TB, SSD 256GB로 구매했다. 보드는 SATA3 를 지원하는데 나중에 분해해서 확인해보니 장치 둘다 SATA2 규격이었다. 벤치마킹을 해보면 40~50MB/s 언저리밖에 안나온다. 썬더볼트1 도킹 스테이션으로 SSD (SATA 방식)에 연결해보면 아래와 같이 나온다. CTO로 들어있던 SSD: Toshiba 256GB 2018년에 추가로 구입한 SSD: SanDisk 3D 2TB SATA3 로 SanDisk 3d 2TB를 Trim 을 적용해서 테스트를 해보니... 오히려 쓰기 성능이 떨어졌다. 쓰기 성능이 반토박보다 적어졌다!!! Timforce를 끄고 다시해보니.. 초반에는 위와 비슷하게 나오다가 몇 번 반복하고 나서는 아래와 같이 다시 늘었다. Trim을 하면 더 성능..
[Spring] MockRestServiceServer를 이용한 RestTemplate 테스트 스프링에서는 이제 웹 클라이언트를 RestTemplate 대신 WebClient를 쓸 것을 이야기하고 있지만 아직 계속 쓰고 있다. 기능 테스트 코드를 작성하려고 한다. 결국은 클라이언트 코드는 RestTemplate을 주입받을 것인데, 테스트 코드에서 해당 요청을 Mocking을 할 수 있게 해주어야 한다. 스프링 프레임워크 스프링 프레임워크에서는 MockRestServiceServer 를 제공한다. 처음에 3.2.x 버전의 JavaDoc을 참고했다. 예제가 아래와 같이 되어있다. RestTemplate restTemplate = new RestTemplate() MockRestServiceServer mockServer = MockRestServiceServer.createServer(restTemp..
[Docker] Unable to find image 해결책 에러 메세지 $ docker run -d --name sonarqube -p 9000:9000 -p 9092:9092 sonarqube Unable to find image 'sonarqube:latest' locally docker: Error response from daemon: Get https://registry-1.docker.io/v2/library/sonarqube/manifests/latest: unauthorized: incorrect username or password. See 'docker run --help'. 시도 Docker Update 업데이트 할 때 권한에 대한 확인 창이 뜬다. 하지만 마찬가지이다. Troubleshoot 진단 성공 딱히 도움이 되지 않는다. 원인은.....
[SonarQube] 메이븐(Maven) 프로젝트에서 커버리지 표시하기 Gradle 방식 내가 개발하던 팀은 주로 그레이들(Gradle)을 사용했다. 그래서 org.sonarqube 라는 이름의 플러그인을 사용해서 SonarQube 리포팅을 했기에 특별한 설정은 프로퍼티 정도만 추가로 해주었다. 그래서 build.gradle 에 아래와 같이 플러그인 DSL 만 명시해주면 ./gradlew sonar 라는 태스크를 이용해서 리포팅이 가능했다. plugins { id "org.sonarqube" version "2.7.1" } sonarqube { properties { property "sonar.projectKey", "${artifactName}" property "sonar.projectName", "${artifactName}" property "sonar.source..
SSD는 RAM 속도를 따라 절대 잡을 수 없다? 2019년 7월 18일 맥쓰사 라는 카페에서 밀크곰(roh7979) 님이 "다다익램"이라는 제목으로 글을 올렸다. 글 자체는 램은 많을 수록 좋다는 글이었는데, 글이 딴데로 새서 SSD는 RAM 속도를 따라 잡을 수 있느냐 없느냐의 문제로 발전되었다. 참고로 RAM과 SSD를 구현하는 방법에는 여러 종류가 있으나 DRAM 과 NAND 플래시로 한정한다. 소자의 속도와 제품의 속도는 다르다. 공통점: 스위칭 기능을 MOS Tr를 통해 한다. 다른점: Gate의 개수의 차이 -> 저장기간의 차이 발생 DRAM: 64ms -> 휘발성 메모리 NAND: 1 ~ 10년(Cell관점에서 SLC: 약 5~10년, MLC/TLC: 약 1~2년) -> 비휘발성 메모리 NAND 플래시: Floating Gate -> 집적..